【问题标题】:form_validation : error message array shows the defaultform_validation : 错误信息数组显示默认值
【发布时间】:2019-04-18 16:19:04
【问题描述】:

我正在处理form_validation。我已经设置了错误消息,但它只显示了我设置的第一个错误。除此之外,它显示默认消息。

$this->form_validation->set_rules('email','Email','required|valid_email|is_unique[user.email]',
    array(
      'required'=>'Empty email',
      'is_unique[user.email]'=>'Email has been registered')
);

如果我没有填写电子邮件表格,它会显示“空电子邮件”。如果我写的电子邮件和数据库中的一样,它会显示 CI 的默认错误:'电子邮件字段必须包含唯一值。'

如何显示“电子邮件已注册”?

【问题讨论】:

  • @Vickel 这些答案与 OP 问题无关
  • 其实问题不仅仅出在is_unique。我只展示一个。另一个问题也出现了,第一个error_message显示,但是下一个error_message显示的是默认字符串
  • @Vickel 好吧,这一切都得到了排序,我不确定你在哪里读到了这些,尽管你发布的信息作为旁注会很有帮助。 OP 的问题对我来说很清楚:我如何显示“电子邮件已注册”?因为它显示 default 消息。
  • @Alex 我已经撤回我的简历作为重复

标签: codeigniter


【解决方案1】:

试试:

$this->form_validation->set_rules('email','Email','required|valid_email|is_unique[user.email]',
    array(
      'required'=>'Empty email',
      'is_unique'=>'Email has been registered')
);

文档:https://www.codeigniter.com/userguide3/libraries/form_validation.html#cascading-rules

我怀疑您没有收到正确的错误消息,因为您不应该为错误数组重复 user.email

【讨论】:

  • 感谢您的回答 :) 对于另一个 error_message,我重复 [something] 。当我删除它时,它会显示我声明的 error_message。
猜你喜欢
  • 2013-11-06
  • 1970-01-01
  • 2011-05-12
  • 2016-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-24
相关资源
最近更新 更多