当我发布未选中复选框的表单时,我收到Notice: Undefined variable: myvariable
。
我需要检查是否未选中复选框。
我该怎么做?
答案 0 :(得分:5)
isset
函数将告诉您变量,数组中的键或对象中的公共属性是否存在:
if (isset($variable)) {...
if (isset($array['key'])) {...
答案 1 :(得分:4)
如果它是未定义的,那么做这样的事情:
if(isset($_POST['myvariable'])){
//this means it's checked... do something with it
}else{
//this means it's not checked.. do something else
}
答案 2 :(得分:4)
一种常见的方法是将其默认为某个值(即false
),如果它未由表单提交(即$_POST
)设置。以下使用三元运算符,根据您的喜好调整值:
$checkbox_value = isset($_POST['myvariable']) ? $_POST['myvariable'] : false;
答案 3 :(得分:2)
在html表单上创建具有相同名称的复选框之前的隐藏字段。
始终定位
<input type="hidden" value="0" name="check"/>
<input type="checkbox" value="1" name="check"/>
In this case the value $_POST['check']
答案 4 :(得分:0)
试试这个:
if(!empty($_POST["foo"])) {
//Do something...
}