Может тогда просто обработчик создавать как отдельную функцию с и вызывать в теле основного файла из файла функций без всяких include/require?
Можно коды обработчиков положить в функции, в один файл и вызывать их по условию.
В примере выше - простое разделение кода - функции из файлов подгружаются по необходимости.
Вызов функции из основного файла нужен для того, чтобы при обращении напрямую к файлу с обработчиком, ненароком не выполнить код. Файл с функцией, которая в этом файле не вызывается, условно-относительно безопасен при прямом обращении к нему из браузера, в обход логики.
Зачем тогда в основном файле и подключение файла и вызов этой же функции?
Может тогда просто обработчик создавать как отдельную функцию с и вызывать в теле основного файла из файла функций без всяких include/require?
Если я правильно вопрос понял. Можно в одном файле обрабатывать.
Вроде правильно)) Общая обработка формы в одном файле, обработчики по нажатию каждой кнопки - раздельно.
Эти коды предполагается иметь каждый в отдельном файле.
Т.е. по условию, в зависимости от того, какая нажата кнопка можно подключать в код вместо код какой-то ссылку на необходимый обработчик через include?
Суть вопроса - есть форма. На ней несколько кнопок. По нажатию одной, происходит обработка в одном отдельном файле. Нажатие второй кнопки обрабатывается в другом отдельном файле.
Как это правильно организовать? Делать две отдельный формы или форму в форме и каждой указывать свой обработчик?
да, рбак
https://ru[dot]wikipedia[dot]org/wiki/%D[dot][dot][dot]0%BB%D0%B5%D0%B9
Что это? ссылка ведет к каким-то ошибкам..
andrewkard пишет:
вообще не выводить
Я наверное совсем-совсем новичок... Из кода понял только, что предлагается манипуляция с адресной строкой. Тернарный оператор вижу, но конкретные операнды и операторы не знакомы...
Очевидно не время еще...
Буду пока пользоваться вариантом "в лоб"
1. Почитал варианты какие есть в сети, в основном речь о доступе по IP. Не знаю, почему этот метод настолько популярный, но он явно очень ограничен в возможностях. Я так понимаю нет смысла говорить о недостатках, все и так понимают. Вопрос с доступом по подсетям. какому-то ограниченному диапазону - тоже не подходит. т.к. есть много чисто пользовательских банальных ограничений. Может есть на сегодня какой-то более актуальный способ кроме IP и входа по паролю?
2. Собственно сам механизм входа в админку. Насколько корректно и в каком именно виде, прямо в разметке указывать условие видимости панели/закладки админки? Например по какому-либо условию задавать блоку видимость через задание параметра стиля формы/тега?
Как вариант - по тому же айпишнику(айпишник -это просто пример для понимания о чем речь) в меню навигации для элемента списка АДМИН прописывать прямо в теге <li> стиль и в качестве изменяемого параметра вставлять заранее определенную php переменную, или лучше это делать через указание тоже в теге <li> конкретного класса(видимый/невидимый), а свойства прописывать через CSS в соответствующем файле?
Или оба варианта - масло масляное - без разницы?
Подскажите, в чем загвоздка. Запускаю страничку на локальном сервере. Вижу в адресной строке не дальше ...index.php Через $_GET получаю отдельные параметры. при наведении на гиперактивные элементы разметки в статус баре браузера вижу полный адрес ссылки, но в адресной стркое после перехода по ссылке - не вижу. Это какой-то конф файл за это отвечает?
2. приходит пустая строка = '', ее длина равна 0.
стоит обратить внимание например на то, что не выделенный чекбокс вообще не придет, в отличие от текстового инпута или селекта.
Так речь именно о полях, а не чекбокс, поэтому я и спрашиваю в этом контексте. Почему нельзя использовать поверку на '' ? В Вашем же варианте два развития событий - когда пустая строка и когда не пустая. Отсюда у меня и был вариант
if ($sValue == '') {} else{}
haveFun пишет:
проверка на пустой/не пустой массив - используется там где требуется именно эта проверка
Так тут как раз и нужно поверять, пустой ли массив. Разве нет?
1. селект нужно делать после апдейда, а не перед ним.
Почему??? Селектом я получаю старые значения из ДБ, и дальше в представлении в форме использую старые, а апдейтом(если будет подтверждение редактирования) заношу в БД уже новые значения...
haveFun пишет:
пустое значение (null) в посте не приходит.
А какое значение приходит? Если значение в поле не указано, элемент в массиве $_POST все равно создается. И собственно сама проверка на пустое значение работает. Объясните пожалуйста.
haveFun пишет:
тогда уж if (!empty($arSetUpdate)) - если наносекунды экономим.
Так какая разница между вариантами:
if (count($arSetUpdate) > 0)
if (count($arSetUpdate))
if (!empty($arSetUpdate))
и
if (strlen($sValue) == 0) {} else{}
У меня дальше в части представления идет обращение к этим данным для вывода в форму уже имеющихся данных для этой новости. Чтобы видеть, чем уже заполнены поля.
$_GET['key1'] я обрабатываю (int). Не дописал...
haveFun пишет:
$arSetUpdate = [];
Это то же самое, что и
$arSetUpdate = array();
?
haveFun пишет:
if (strlen($sValue) == 0)
А если значение в поле будет именно "0"?
Почему не на пустое значение проверка?
haveFun пишет:
if (count($arSetUpdate) > 0)
Зачем проверять еще на ">0"
count же вернет в любом случае отличное значение от нуля, если массив не пустой
Почему не просто if (count()) {...}
Есть форма с новостью - для редактирования. Задача - Если при редактировании случайно было очищено какое-то поле и отправлена форма, как отредактрованная - чтобы это поле в уже отредактированной новости не осталось пустым, как ошибочно удаленное, а перезаписалось значение, которое было там ранее, до редактирования.
Реализовал вот так:
Видел такое применение. Есть ли для этого какие-т предпосылки? Какие преимущества при использовании классов для назначения констант по сравнению с обычным способом через define?