我有以下表单验证:
$this->CI->form_validation->set_rules(
'email', 'lang:email', 'callback_validate_email');
在同一个控制器中,我有以下功能(请原谅这里的调试):
public function validate_email($string) {
echo 'test val';
exit;
$valid = $this->CI->force_model->validate_email($string);
if(!$valid) {
$this->CI->form_validation->set_message('validate_email', 'lang:email');
return false;
} else {
return true;
}
}
我的问题是,该函数永远不会通过回调调用。谁能建议这里的问题可能是什么?
我看到其他人有这个问题,奇怪的是他们也在使用$this->CI->...
他们的解决方案是扩展验证库并在那里添加自定义验证回调。更多信息,请参阅:库中的 CodeIgniter 验证不接受回调
如果您改用$this->form_validation->...
设置表单验证规则,它是否有效? 例如
$this->form_validation->set_rules(
'email', 'lang:email', 'callback_validate_email');