电子邮件和密码的CodeIgniter验证规则

时间:2015-06-08 11:00:13

标签: php codeigniter validation

我习惯用CodeIgniter编写应用程序,我是一个新手。我刚刚开始学习CodeIgniter 3.0,并且达到了验证规则。

我注意到xss_clean现在已经从验证类中消失了,那么我应该在验证电子邮件和密码时使用哪些规则?仅使用trimvalid_email和必需品足以保障安全吗?

很抱歉,如果问过这个问题,但我搜索了一下,我看到人们使用xss_clean的旧主题。

1 个答案:

答案 0 :(得分:4)

包括电子邮件帮助:

$this->load->helper('email');

对于电子邮件:

$this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email|xss_clean');

或者您也可以使用PHP过滤器进行电子邮件验证

filter_var($email, FILTER_VALIDATE_EMAIL);

用于密码表达

   public function chk_password_expression($str)

    {

    if (1 !== preg_match("/^.*(?=.{6,})(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).*$/", $str))

    {
        $this->form_validation->set_message('chk_password_expression', '%s must be at least 6 characters and must contain at least one lower case letter, one upper case letter and one digit');
        return FALSE;
    }

    else

    {
        return TRUE;
    }
} 

要调用您应该使用的功能:

$this->form_validation->set_rules(  'password', 'Password', 'trim|required|min_length[6]|max_length[15]|callback_chk_password_expression');

注意:chk_password_expression应位于同一个类控制器或父类中。电子邮件帮助应包含在$ this-> load-> helper('email');