[英]My codeigniter callback does not work
我在控制器中的代码是
$this->form_validation->set_rules('periodStartFrom','Salary Period StartFrom', 'trim|required|callback_dateValidate');
if($this->form_validation->run() == FALSE )
{
$this->load->view('pages/salary_period');
}
else
{}
我的自定义格式验证文件是:
class MY_Form_validation extends CI_Form_validation {
public function __construct() {
parent::__construct();
}
public function dateValidate($date)
{
$rgexp = '/(^(((0[1-9]|[12][0-8])[.](0[1-9]|1[012]))|((29|30|31)[.] (0[13578]|1[02]))|((29|30)[.](0[4,6,9]|11)))[.](19|[2-9][0-9])\d\d$)|(^29[.]02[.](19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)$)/' ;
if(preg_match($rgexp,$date) === 1)
{
return TRUE;
}
else{return FALSE;}
}
}
在控制器构造函数中加载了MY_Form_validation:
$this->load->library('My_Form_validation');
问题是当我在控制器内编写函数dateValidate时,它可以工作,而我无法通过MY_Form_validation工作。 每次显示我在form_validation_lang.php中设置的错误消息
我找不到问题所在。 有什么帮助吗?
在MY_Form_Validation中定义它们时,请删除“ callback_”,例如:
$this->form_validation->set_rules('periodStartFrom','Salary Period StartFrom', 'trim|required|dateValidate');
另一方面,加载不带MY_的Form_validation库。 MY_会自动加载。
$this->load->library('Form_validation');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.