繁体   English   中英

扩展表单验证类并在Codeigniter中添加自定义验证规则

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM