嗨,我有一个像这样的表格
<form method=post action="control.php">
<input name="cat[]" type="checkbox" value="blabla" checked>blabla
<input name="cat[]" type="checkbox" value="bleble" checked>bleble
.
.
.
<input name="send" type="submit" id="send" value="send">
</form>
在control.php中,当我使用$ _POST [cat]时,我想要取消选中框。我怎样才能做到这一点?谢谢你的帮助...
答案 0 :(得分:2)
您无法获得未选中的复选框,只能获取已选中复选框。
如果您需要未选中的复选框,则必须查看复选框并找出未选中的复选框。
答案 1 :(得分:2)
可以使用foreach从数组中轻松生成复选框组(cat[]
)。
$cat=array(
'blabla' => 'blabla',
'bleble' => 'bleble',
...
);
<? foreach ($cat as $k=>$v) : ?>
<input name="cat[]" type="checkbox" value="<?=$k?>" checked /><?=$v?>
<? endforeach; ?>
如果你有一个包含所有可能复选框的数组,很容易将它与所选复选框的POSTed数组进行比较,并找出哪些复选框没有。
您可以使用array_diff:
$unchecked=array_diff(array_keys($cat), $_POST['cat']);