加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Codeigniter表单验证错误消息

发布时间:2020-12-13 21:44:34 所属栏目:PHP教程 来源:网络整理
导读:我在我的网站标题上有一个表单,我允许用户使用他的用户名/密码登录…然后我发布到/登录页面并检查用户名是否存在以允许用户登录..如果有登录时出现问题我输出这些错误…… 我尝试使用以下代码来显示自定义错误,但没有运气 if ($this-form_validation-run() =
我在我的网站标题上有一个表单,我允许用户使用他的用户名/密码登录…然后我发布到/登录页面并检查用户名是否存在以允许用户登录..如果有登录时出现问题我输出这些错误……

我尝试使用以下代码来显示自定义错误,但没有运气

if ($this->form_validation->run() == false){
        $this->load->view("login/index",$data);
    }else{
        $return = $this->_submitLogin();
        if ($return == true){
            //success
        }else{
            $this->form_validation->set_message('new_error','error goes here');
            //error
        }
        $this->load->view("login/index",$data);
    }

set_message是如何工作的,如果这是错误的方法,哪一个允许我在这种情况下显示自定义错误?

编辑:

验证规则:

private $validation_rules = array(
    array(
        'field'   => 'username','label'   => 'Username','rules'   => 'trim|required|callback__check_valid_username|min_length[6]|max_length[20]|xss_clean'
    ),array(
        'field'   => 'password','label'   => 'Password','rules'   => 'trim|required|min_length[6]|max_length[32]'
    ),);

解决方法

set_message方法允许您动态设置自己的错误消息.但有一点需要注意的是,键名必须与它对应的函数名匹配.

如果您需要修改自定义规则,即_check_valid_username,则可以通过在此函数中执行set_message来执行此操作:

function _check_valid_username($str)
{
   // Your validation code
   // ...
   // Put this in condition where you want to return FALSE
   $this->form_validation->set_message('_check_valid_username','Error Message');
   //
}

如果要更改特定规则的默认错误消息,可以通过调用set_message并将第一个参数作为规则名称,将第二个参数作为自定义错误来执行此操作.例如,如果您想更改所需的错误:

$this->form_validation->set_message('required','Oops this %s is required');

如果您需要更改语言而不是错误语句本身,请创建自己的form_validation_lang.php并将其放入系统语言目录中的正确语言文件夹中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读