如何在Controller中使用php codeigniter获取复选框值

时间:2010-11-06 11:16:54

标签: codeigniter

我是PHP codeigniter的新手,

如何在Controller中使用php Codeigniter获取复选框值。

这是Checkboxes,我想在控制器中使用post menthod获取基于名称的复选框值作为“businessType”。

<input type="checkbox"name="businessType" value="1">
<input type="checkbox"name="businessType" value="2">
<input type="checkbox"name="businessType" value="3">

请建议

感谢

4 个答案:

答案 0 :(得分:38)

<input type="checkbox" name="businessType[]" value="1">
<input type="checkbox" name="businessType[]" value="2">
<input type="checkbox" name="businessType[]" value="3">

$data = $this->input->post('businessType');

您应该看到$ data是一个数组,并显示不同的值。尝试执行var_dump($data);以查看数组中的内容。

var_dump()

答案 1 :(得分:7)

如果一次只能选择其中一个复选框,则应使用一组单选按钮(type="radio")。我认为这是你要做的,因为所有输入的name都是相同的。

要获取复选框或单选按钮组的值,请使用:

$this->input->post('businessType')

编辑:

如果您真的想要复选框,则需要将它们命名为不同的名称:

<input type="checkbox"name="businessType1" value="1">
<input type="checkbox"name="businessType2" value="2">
<input type="checkbox"name="businessType3" value="3">

然后使用与之前相同的post方法:

$this->input->post('businessType1') //the first checkbox's value
$this->input->post('businessType2') //the second
$this->input->post('businessType3') //the third

答案 2 :(得分:7)

在每个名字后面加上大括号。给每个人一个独特的价值:

<input type="radio" name="businessType[]" value="1">
<input type="radio" name="businessType[]" value="2">
<input type="radio" name="businessType[]" value="3">

让他们这样:

substr(implode(', ', $this->input->post('businessType')), 0)

答案 3 :(得分:-1)

正如dvcolgan(+1)建议的那样,你应该使用单选按钮,这是一个包含在字段集中的例子。

您的HTML

<fieldset>
<legend>Choose Business Type:</legend><br>
<input type="radio" name="businessType" value="1">
<input type="radio" name="businessType" value="2">
<input type="radio" name="businessType" value="3">
</fieldset>

然后在你的php中

$businessType = $this->input->post("businessType");