я расширенная CI библиотеки проверки формы следующим образом:Codeigniter расширения библиотеки проверки не работает
class MY_Form_validation extends CI_Form_validation {
function __construct($config = array())
{
parent::__construct($config);
}
function check_first_char($str)
{
$CI =& get_instance();
$first_char = substr($str, 0, 1);
if ($first_char != 'P' || $first_char != 'S')
{
$CI->form_validation->set_message('check_first_char', 'The %s field must begin with P or S!');
return FALSE;
}
else {
return TRUE;
}
}
и назвав его как следующее:
$this->form_validation->set_rules('sponsor_id', 'Sponsor ID', 'trim|required|exact_length[7]|check_first_char');
Но это не работает. Что я делаю неправильно?
Можете ли вы уточнить, что означает «не работает»? –
Я сделал то, что вы предложили, но он все еще не работает. и не работает, если я передаю значение, отличное от чего-то, начинающегося с P или S, оно не показывает ошибки проверки и анализирует данные в БД. –
Действуют ли какие-либо другие правила валидации? Вы правильно загружаете библиотеку Form_validation? –