从php聚集的检查列表中计算已选中复选框的数量

时间:2011-07-24 18:55:41

标签: php dynamic checkbox

我遇到了使用PHP和MYSQL的问题。我有一个动态的选项列表,用户可以从管理面板中选择(最多3个),如下所示:

<input type="checkbox" name="<?php echo "category".$i; ?>" 
   value="<?php echo $cat_id; ?>" />
  <?php echo $cat_name; ?><br />
<?php
$i++;
}
echo "<input type='hidden' name='num_cat' value='$num_cat' />";
?>

我现在想要计算“检查”了多少个复选框,如果检查的数量超过0且小于4,它将使用这些存储更新mysql表。它们通过1和0存储。所以他们勾选'是'并存储1,他们勾选'否'并存储0。

我一直在尝试使用jQuery和Javascript,但它们似乎都适用于Check Box Forms,它具有在表单中预先写好的值,我的数据库是动态的。

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:2)

在复选框名称的末尾使用[],并在p​​hp脚本中的相应$ _POST []数组中使用sizeof函数。

<input type="checkbox" name="values[]" value="1" />Value 1
<input type="checkbox" name="values[]" value="2" />Value 2

sizeof($_POST['values']);

请注意,复选框具有相同的名称,并以括号(values [])结束。这表明复选框属于一起,并在php中捆绑为一个数组。只有选定的值也会出现在数组中。