为什么我无法将视图中的数组数据输入到控制器中?
观看次数:
<?php
foreach($get_q->result() as $gq){
?>
<input class="form-control" value="<?php echo $gq->id; ?>" name="hidden" type="hidden">
<?php
}
?>
控制器
if($this->form_validation->run()==FALSE)
{
//true
$this->load->model("mymodel");
for($i=0; $i<count($this->input->post('hidden')); $i++){
$data = array(
'question_id' => $this->input->post("hidden")[$i]
);
if($this->input->post("insert"))
{
$this->mymodel->my_function($data);
}
}
}
它可以正常工作,但是它只能获取数组的最后一个元素,另一个元素变为零(0)。
赞
答案 0 :(得分:2)
name="hidden"
不正确。多个name="hidden"
表示最后一个字段将覆盖所有先前的值。使用[]
表示法:
<input class="form-control" value="<?php echo $gq->id; ?>" name="hidden[]" type="hidden">
----- NOTE ^
有了这个,$this->input->post('hidden')
将成为您所期望的数组。