如何使用此代码在codeigniter中获取多个复选框值
<input type="checkbox" name="assign[]" value="Keyur"> Keyur<br/>
<input type="checkbox" name="assign[]" value="Ritesh"> Ritesh<br/>
<input type="checkbox" name="assign[]" value="Saurabh"> Saurabh<br/>
<input type="checkbox" name="assign[]" value="Maulik"> Maulik<br/>
在控制器
$data1 = $this->input->post('assign[]');
我这样做但却无法获得价值,我犯了错误????
答案 0 :(得分:6)
使用此:
$this->input->post('assign');
它将是一个数组,与$_POST['assign']
相同。
示例:
// This assumes we know the post key is set and is an array,
// but you should definitely check first
foreach ($this->input->post('assign') as $key => $value)
{
echo "Index {$key}'s value is {$value}.";
}
不幸的是,如果您需要访问特定索引,则必须先将其分配给变量,或使用$_POST
而不是$this->input->post()
。例如:
$assign = $this->input->post('assign');
echo $assign[0]; // First value
echo $_POST['assign'][0]; // First value
更新:从PHP 5.4开始,您可以直接从函数调用访问索引,如下所示:
$this->input->post('assign')[0];
不是推荐或更好,但只是让你知道它是可能的。
无论哪种方式,请确保在尝试访问之前设置了索引的数据和(如果,则需要这样做)。
答案 1 :(得分:3)
在你的控制器中试试这个:
$data1 = $this->input->post('assign'); //this returns an array so use foreach to extract data
foreach( $data1 as $key => $value){
echo $value.' '."</br>";
}
我已经对我的程序做了这件事并且有效。
答案 2 :(得分:1)
试试这个:
for($i = 0; $i< count($_POST['assign']); $i++){
echo $_POST['assign'][$i] . "<br />";
}