获取复选框的多个值

key*_*yur 9 php codeigniter

如何使用此代码在codeigniter中获取多个复选框值

<input type="checkbox" name="assign[]" value="Keyur">&nbsp;Keyur<br/>
        <input type="checkbox" name="assign[]" value="Ritesh">&nbsp;Ritesh<br/>
        <input type="checkbox" name="assign[]" value="Saurabh">&nbsp;Saurabh<br/>
        <input type="checkbox" name="assign[]" value="Maulik">&nbsp;Maulik<br/>
Run Code Online (Sandbox Code Playgroud)

在控制器

$data1 = $this->input->post('assign[]');
Run Code Online (Sandbox Code Playgroud)

我这样做,但不能得到价值,我犯错误????

Wes*_*rch 6

用这个:

$this->input->post('assign');
Run Code Online (Sandbox Code Playgroud)

它将是一个数组,与之相同$_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}.";
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,如果您需要访问特定索引,则必须先将其分配给变量,或者使用$_POST而不是$this->input->post().例:

$assign = $this->input->post('assign');
echo $assign[0]; // First value
echo $_POST['assign'][0]; // First value
Run Code Online (Sandbox Code Playgroud)

更新:从PHP 5.4开始,您可以直接从函数调用访问索引,如下所示:

$this->input->post('assign')[0];
Run Code Online (Sandbox Code Playgroud)

不是建议或更好,但只是让你知道它是可能的.

无论哪种方式,请确保在您尝试访问它之前设置了帖子数据索引(如果您需要这样做).