我有一个php函数脚本应该取消选中复选框或复选框,如果用户在单击预览按钮时将其取消选中但我只能获取最后一个 未经检查的复选框以保持未选中而不是其他checkeboxes如何解决此问题,以便取消选中未选中的所有复选框?
这是我的PHP函数的一部分,它给了我这个问题。
if(isset($_POST['preview'])){
foreach($query_cat_id as $qci) {
if(!in_array($qci, $cat_id)){
$unchecked = $purifier->purify(strip_tags($qci));
}
}
}
for ($x = 0; $x < count($query_cat_id); $x++){
if(($query_cat_id[$x] == $cat['id']) && ($cat['id'] != $delete_id) && ($cat['id'] != $unchecked)){
echo 'checked="checked"';
}
}
答案 0 :(得分:1)
为什么不只是检查变量是否已设置,如果在提交表单时选中了复选框,则会在$_POST['checkboxName']
中显示该复选框,否则isset($_POST['checkboxName'])
将返回false。
<?php
if (isset($_POST['heh']))
echo $_POST['heh'];
else
echo "Not checked";
?>
<form action='yourPage.php' method='post'>
<input type='checkbox' name='heh' />
<input type='submit' />
</form>
答案 1 :(得分:0)
我在客户端解决了这个问题
我输入的隐藏类型与复选框的名称相同,值为0,隐藏字段后面的复选框值为1
如果未选中该复选框,则从隐藏字段中获取值0,如果有人检查,则从复选框中获取1。
所以我只需要检查$ value == 1然后检查=检查