[英]Extend form validation class and add custom validation rules in codeigniter
我正在嘗試做的是擴展表單驗證類並在其中添加一些自定義驗證規則,但是由於某些原因,codeigniter看不到其中的任何一個...
我在庫文件夾MY_Form_validation.php中創建了新文件,並添加了以下代碼:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Form_validation extends CI_Form_validation {
function valid_date($str)
{
return FALSE;
}
}
但是validation_errors()函數永遠不會返回任何錯誤(我已將錯誤消息存儲在config文件夾中),如果我將valid_date函數放置在控制器中,則可以正常工作。 有任何想法嗎?
我不知道確切的答案是什么,但是我已經想到了這種可能性,您是在自動加載my_form_validation而不是form_validation嗎? 因為如果您加載form_validation,可能會導致您的CI實例不知道您的類?
您需要設置一條消息。
if(condition)
{
return true;
}
else
{
$this->CI->form_validation->set_message('function_name', 'message');
return false;
}
如何更改MY_Form_validation.php代碼,使其具有__construct()
函數並調用父級__construct()
,如下所示:
class MY_Form_validation extends CI_Form_validation {
public function __construct()
{
parent::__construct();
}
public function valid_date($str)
{
return FALSE;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.