php登录表单验证错误返回,php – Codeigniter表单验证错误消息

我在我的网站标题上有一个表单,我允许用户使用他的用户名/密码登录…然后我发布到/登录页面并检查用户名是否存在以允许用户登录..如果有登录时出现问题我输出这些错误……

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

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并将其放入系统语言目录中的正确语言文件夹中.

标签:php,codeigniter

来源: https://codeday.me/bug/20190729/1575587.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值