【问题标题】:Cant show custom error message when form validation fails in Codeigniter当 Codeigniter 中的表单验证失败时,无法显示自定义错误消息
【发布时间】:2014-11-05 17:19:09
【问题描述】:

不确定我缺少什么,当 Codeigniter 中的表单验证失败时,无法显示自定义错误消息。
这是我的控制器代码:

$this->form_validation->set_rules('day', 'Day', 'required|is_natural_no_zero|xss_clean');
$this->form_validation->set_message('day', 'Error in Day');

但它仍然显示默认错误消息“日期字段必须包含大于零的数字。”
我想显示此自定义消息“当天错误”而不是默认错误消息,我该怎么做?谢谢

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    您可以为规则设置自己的消息,而不是为字段... 例如,使用您的规则,您可以这样做:

    $this->form_validation->set_rules('day', 'Day', 'required|is_natural_no_zero|xss_clean');
    $this->form_validation->set_message('required', 'My custom message for required fields');
    $this->form_validation->set_message('is_natural_no_zero', 'My custom message for is_natural_no_zero fields');
    

    参考:https://www.codeigniter.com/user-guide/libraries/form_validation.html#settingerrors

    如果要单独显示字段的错误,请使用 form_error 函数...像这样:

    <h5>Email Address</h5>
    <?php echo form_error('email') != "" ? "My custom error" : ""; ?>
    <input type="text" name="email" />
    

    参考:https://www.codeigniter.com/user-guide/libraries/form_validation.html#individualerrors

    【讨论】:

    • 谢谢你现在我明白了。但是是否可以为该字段添加自定义错误消息?
    猜你喜欢
    • 2011-10-30
    • 2012-04-08
    • 2015-04-17
    • 1970-01-01
    • 2012-07-28
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 2014-06-08
    相关资源
    最近更新 更多