Как определить, установлен ли флажок с помощью PHP? - PullRequest
1 голос
/ 14 июня 2011

Я получаю Notice: Undefined variable: myvariable, когда я публикую свою форму с снятым флажком.

Мне нужно проверить, если флажок не установлен.

Как мне это сделать?

Ответы [ 5 ]

5 голосов
/ 14 июня 2011

Функция isset сообщит вам, существует ли переменная, ключ в массиве или открытое свойство в объекте:

if (isset($variable)) {...
if (isset($array['key'])) {...
4 голосов
/ 14 июня 2011

Обычный подход заключается в том, чтобы установить по умолчанию некоторое значение (т. Е. false), если оно не установлено отправкой формы (т. Е. $_POST).Далее используется троичный оператор, отрегулируйте значения по своему вкусу:

 $checkbox_value = isset($_POST['myvariable']) ? $_POST['myvariable'] : false;
4 голосов
/ 14 июня 2011

Если это выглядит как неопределенное, сделайте что-то вроде этого:

if(isset($_POST['myvariable'])){
    //this means it's checked... do something with it
}else{
    //this means it's not checked.. do something else
}
2 голосов
/ 14 июня 2011

Создать скрытое поле перед флажком с тем же именем в HTML-форме.

<code>
<input type="hidden" value="0" name="check"/>
<input type="checkbox" value="1" name="check"/>

В этом случае значение $ _POST ['check'] определяется всегда

0 голосов
/ 14 июня 2011

Попробуйте это:

if(!empty($_POST["foo"])) {
    //Do something...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...