gpt4 book ai didi

php - CodeIgniter 2.0 - 验证数组

转载 作者:可可西里 更新时间:2023-11-01 00:07:06 25 4
gpt4 key购买 nike

我在将一段表单验证代码转换为 CI 2.0 时遇到了一些问题。我正在尝试验证一组复选框,但由于某种原因验证无法运行回调或未验证。

如何验证一组复选框,以便至少选中一个并且值必须是选项之一(选项数组的键)?

编辑:

这是对它让我失望的地方的更好解释。假设我有这些字段:

<input type="checkbox" value="1" name="purpose[]" />
<input type="checkbox" value="2" name="purpose[]" />

我为 purpose[] 设置了两个规则 - 一个是必需规则,另一个是自定义回调,用于检查该值是否存在于可能值数组中。

如果我将字段名称编辑为:

<input type="checkbox" value="1" name="purpose[abc]" />

甚至将值更改为“”,验证通过。它忽略了必需的规则和我的自定义回调。

有人知道如何处理这个问题吗?

最佳答案

必须将数组传递给您的 set_rules 调用,并以开始/结束方括号为后缀,如下所示:

$this->form_validation->set_rules('checkboxes[]', 'My Checkboxes', 'required');

CI 用户指南中有更多详细信息 - https://www.codeigniter.com/user_guide/libraries/form_validation.html#using-arrays-as-field-names

要将复选框值检查为多个值之一,您需要创建一个自定义回调函数 - https://www.codeigniter.com/user_guide/libraries/form_validation.html#callbacks-your-own-validation-methods

关于php - CodeIgniter 2.0 - 验证数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5222790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com