|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.04.2023, 05:14 | #1 |
Пользователь
Регистрация: 19.01.2012
Сообщений: 22
|
Не выводится значение переменной в <option>
Здравствуйте! Помогите, пожалуйста разобраться.
Есть функция, которая ищет в директории файлы, которые заканчиваются .txt и формирует их в выпадающее меню. Здесь всё работает как нужно. Но сейчас задача, добавить в <option значение selected, если переменная $file_name равна переменной $file Проблема заключается в том, что переменная $selected которая находится в <option всегда пустая. Не потому что данного файла нет в директории, а потому что любая переменная после <option будет пустой. В общем, переменную $selected в <option что-то блокирует или очищает значение. Но я не могу разобраться что именно. Прошу помочь PHP код:
|
28.04.2023, 05:33 | #2 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
А разве md5 надо считать не для basename? Иначе $file_name должна быть равна
Код:
Для того, чтобы понять почему $selected не устанавливается, достаточно просто вывести в option значение md5($file_name) хотя бы в виде комментария, чтобы иметь возможность визуально сравнить значения в value и понять, что нет совпадений. PHP код:
Последний раз редактировалось macomics; 28.04.2023 в 05:57. |
28.04.2023, 08:11 | #3 |
Пользователь
Регистрация: 19.01.2012
Сообщений: 22
|
Спасибо, большое. Это то что нужно.
Но только есть один нюанс. Почему-то переменная $file_name = "name_of_file"; прописанная до function my_function() пустая, а если прописать её после function my_function() то всё ок. Почему так происходит и как задать значение переменной до функции? Последний раз редактировалось max74max; 28.04.2023 в 08:16. |
28.04.2023, 09:12 | #4 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,179
|
почитайте про видимость переменных... функция по сути отдельная программа и что было вне её не знает - да и не должна.
Для передачи в функцию тех или иных значений используются параметры... в этом как бы и заключается суть функций.... передал в функцию параметр(ы) = получил результат(ы) в вашем случае - Код:
Код:
Последний раз редактировалось ADSoft; 28.04.2023 в 09:18. |
28.04.2023, 12:24 | #5 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
еще можно сделать так
PHP код:
|
28.04.2023, 15:53 | #6 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,179
|
можно - но не нужно учить плохому... глобальные переменный в целом - зло
|
28.04.2023, 16:13 | #7 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
И что в них злого? Глобальные переменные это просто переменные. Ещё одна возможность задавать и хранить значения у программы. Кстати, не будь глобальных переменных, то большинство программ просто не существовало бы. Возможность адресации данных глобально необходима.
Если бы от неё так просто можно было бы отказаться, тогда из php давно бы уже выпилили $GLOBALS Последний раз редактировалось macomics; 28.04.2023 в 16:18. |
28.04.2023, 17:10 | #8 |
Форумчанин
Регистрация: 27.04.2022
Сообщений: 494
|
macomics, не выпиливают из-за обратной совместимости. Но использовать $GLOBALS в наше время - это себе дороже.
https://snipp.ru/php/registry
стимулятор https://yoomoney.ru/to/41001303250491
|
28.04.2023, 17:31 | #9 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Тогда почему нету пометки, что это устарело. Да и появились $GLOBALS не с самой первой версии. Её ввели, если я правильно помню в 4+ версии или вообще в 5.
Хорошо. Не нравится $GLOBALS, тогда как обойтись без $_GET, $_POST или $_FILES? Это тоже глобальные массивы. Последний раз редактировалось macomics; 28.04.2023 в 17:36. |
28.04.2023, 17:55 | #10 |
Форумчанин
Регистрация: 27.04.2022
Сообщений: 494
|
С ними тоже уже давно никто не работает напрямую, но вы правы без них ни как.
А ещё и $_SESSION есть)) Но от конструкции global $file_name; больше проблем, чем пользы.
стимулятор https://yoomoney.ru/to/41001303250491
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не выводится значение переменной | Женя32 | PHP | 6 | 26.12.2017 16:12 |
Не выводится значение переменной | woodman02 | PHP | 3 | 03.03.2017 16:02 |
Как значение переменной передать другой переменной? - jQuery | serauto79 | JavaScript, Ajax | 4 | 05.08.2015 17:03 |
Установить значение в списке option | Даниил_глазко | JavaScript, Ajax | 1 | 22.08.2011 16:40 |
Найти значение переменной y в зависимости от значения переменной х | Rishi | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 11.05.2011 20:25 |