表单中的代码点火器回调函数验证不起作用


Codeigniter callback funtion in form Validation not working

导入库

$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');

设置规则

$this->form_validation->set_rules('START_DAY', 'lang:START_DAY', 'callback_start_check|required');

回调函数

public function start_check($startdate){
....
}

这一切都在一个控制器中。

我的required验证有效,但我的表单验证无法在我的回调函数上运行。我看到了很多关于这一点的帖子,但有一些关于改变MY_Form_validation.php的东西。但是,我真的很想知道我的代码是如何工作的?

我发现在Form_validation.php中,方法method_exists($this->CI, $rule)返回带有$rule的 FALSE 正是我的函数名称。所以问题可能来自$this-CI.但是,它完全指向我的控制器路径。这是怎么回事?

更改规则顺序:

$this->form_validation->set_rules('START_DAY', 'lang:START_DAY', 'required|callback_start_check');
这可能

对你有用 -

$this->form_validation->set_rules('name','Name','required|callback__unique_name[Role.name]');
//double underscore after callback  

这将是回调函数 -

public function _unique_name($name) {
     //Put your validation code here
}