CodeIgniter:set_checkbox问题

时间:2011-03-21 21:45:05

标签: validation forms codeigniter checkbox

我似乎遇到了一些非常讨厌的事情:

我有一个包含一组复选框的表单。 我已经为我的表单设置了验证规则,只添加了一个空表 为我的复选框组。但是,在验证我的表单并给出错误后, 它只会重新检查所选组中的最后一个。这只是 让我疯了,因为用户永远不会注意到它没有被检查!

现在,在构建系统之前,我只是对表单进行硬编码以检查它是否有效 我希望它如何运作。

<fieldset>
    <legend>Locaties veldwedstrijden</legend>
    <?php echo form_checkbox('locatie','oudenaarde', set_checkbox('locatie','oudenaarde'));?>3-7-2011 te Oudenaarde <br />
    <?php echo form_checkbox('locatie','arendonk', set_checkbox('locatie','arendonk'));?>31-7-2011 Arendonk<br />
    <?php echo form_checkbox('locatie','westdonk', set_checkbox('locatie','westdonk'));?>11-09-2011 Westhoek – MERKEN<br />
</fieldset> 

它还有这个验证规则:

array('field' => 'locatie','label' => '','rules' => ''),

有谁能告诉我我做错了什么?我阅读了整本手册,但我不能 找到这个代码可能出错的最轻微的暗示...

1 个答案:

答案 0 :(得分:4)

您正在使用单选按钮之类的复选框。无论选中多少复选框,它们都被命名为locatie,php只会看到一个值。

如果要从复选框中保存多个值,则需要为每个复选框使用不同的名称(locatie1,locatie2,locatie3)或使用php样式名称数组(locatie [])。我不确定后者CI表单助手功能是否可以正常使用这种命名方式。