【问题标题】:Check for posted data inside the config file or form_validation.php in CodeIgniter在 CodeIgniter 中检查配置文件或 form_validation.php 中发布的数据
【发布时间】:2013-07-03 21:09:21
【问题描述】:

我想检查是否存在已发布的数据,以便我可以根据需要设置表单字段,而无需创建自定义规则。

是否可以在配置文件(特别是 form_validation.php 配置文件)中使用/加载/调用 CodeIgniter 的输入库并获取用户发布的数据而无需使用本机 $_POST 变量?

我的代码是这样的......

    ...
    array(
        'field' => 'dob_day',
        'label' => 'Day',
        'rules' => (($this->ci->input->post('include_person') === 'yes') ? 'required|' : '') . 'integer|max_length[2]|greater_than[0]|less_than[32]|valid_birth_date'
    ),
    ...

显然,我的方法行不通。呵呵。如果有另一种有效的 codeigniter 方式来做我在想的事情,请告诉我。

感谢您的所有帮助! :)

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    看这个:
    MANUAL

    试试这个例子,在这个模式下你可以在运行时改变你的规则:

    $this->form_validation->set_rules('dob_day', 'Day', 'your new rules');
    

    【讨论】:

    • 我也看到了。这是我目前的做法,但有没有更干净的方法来调整规则?
    • 在控制器中为 dob_day 字段设置规则后,我实际发现的是,配置中所有其他字段的设置规则都没有实现。听起来很糟糕..我不想为其他字段设置规则,因为它使设置规则变得多余。
    • 我不认为你能做到这一点@bonbon.langes
    【解决方案2】:

    好的,我最终将逻辑放入控制器中,并仅使用内联验证。但是为了在不必设置所有规则的情况下进行内联验证,我使用了这个网站的代码来允许内联和配置规则混合使用。

    http://brettic.us/2010/09/13/codeigniter-form-validation-mix-rule/

    干杯!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-18
      • 1970-01-01
      • 1970-01-01
      • 2015-07-04
      • 1970-01-01
      • 2010-09-19
      相关资源
      最近更新 更多