在PHP中发布复选框数组

时间:2017-08-11 10:17:16

标签: php checkbox

我有多个名称为adminMeta[]的复选框,例如:

<input type="checkbox" name="adminMeta[name1]" value="1" />
<input type="checkbox" name="adminMeta[name2]" value="1" />

依此类推,我也有类似的文字输入。

发布数据时,我正在循环使用foreach循环:

foreach($_POST["adminMeta"] as $a => $b) {

}

在循环内部,我根据数据库是否已存在来添加/更新数据库中的记录。

但是我遇到了一些复选框问题,并且知道它们是否已经过检查。

我已尝试使用if(isset($b)),但尚无效。

如何判断我的循环内部是否选中了复选框?

1 个答案:

答案 0 :(得分:1)

另一种方法是在每次检查之前设置隐藏输入,默认值为0:

<input type="hidden" name="adminMeta[name1]" value="0" />
<input type="checkbox" name="adminMeta[name1]" value="1" />
<input type="hidden" name="adminMeta[name2]" value="0" />
<input type="checkbox" name="adminMeta[name2]" value="1" />

现在即使您没有选中复选框,也会收到数据。