我试图从foreach循环生成的复选框中获取多个值。请检查下面的代码并给我一些建议。感谢。
查看档案
<?php foreach ($size_list as $size) { ?>
<label><input name="size_id" type="checkbox" value="<?php echo $size->size_id;?>" />
<?php echo $v_size_list->size;?></label>
<?php } ?>
当我在选择多个复选框后提交此表单时,我只获得了最后一个复选框值。但我想要所有选中的复选框值。请给我一些建议。感谢
答案 0 :(得分:1)
在名称中使用数组,如
name="size_id[]"
您将获得数组中所有选中的复选框值。
答案 1 :(得分:1)
使用将您的复选框名称更改为数组,然后将您在表单中检查的数组结构中的所有复选框值进行控制
<强> name="size_id[ ]"
强>
<?php foreach ($size_list as $size) { ?>
<label><input name="size_id[]" type="checkbox" value="<?php echo $size->size_id;?>" />
<?php echo $v_size_list->size;?></label>
并通过
获取值 <强> print_r($_POST['size_id']);
强>
答案 2 :(得分:0)
我的建议是检查这个答案: Get $_POST from multiple checkboxes
所以你的复选框名称必须是size_id [],并且在控制器中,你检查复选框的值,你必须用foreach循环它。
public function posted()
{
$checkboxes = $this->input->post("size_id");
foreach($checkboxes as $checkbox)
{
// in this loop you can check the value of the selected checkbox
}
}