笨alpha_numeric表单验证不接受空间(codeigniter alpha_numeric

2019-11-02 10:15发布

我想设置表单验证,使用户不能添加特殊字符,如$,@,&等..只有字母数字字符被允许

$this->form_validation->set_rules('cat_name', 'Category Name', 'trim|xss_clean|required|is_unique[cht_category.cat_name]|min_length[5]|max_length[75]|alpha_numeric');

当我与空间添加的类别名称然后我得到以下错误“的类别名称字段只能包含字母数字字符。” 当我添加的类别名称,没有空间或单个词那么它的做工精细

Answer 1:

采用:

alpha_numeric_spaces

参考: https://www.codeigniter.com/userguide3/libraries/form_validation.html



Answer 2:

那么, alpha_numeric不会让空间通过。 而不是使用的alpha_numeric ,您可以编写自己的功能,并通过它在那里( 笨表单验证阿尔法和空格。 ):

function alpha_dash_space($str)
{
    return ( ! preg_match("/^([-a-z_ ])+$/i", $str)) ? FALSE : TRUE;
} 

接着

$this->form_validation->set_rules('cat_name', 'Category Name', 'trim|xss_clean|required|is_unique[cht_category.cat_name]|min_length[5]|max_length[75]|callback__alpha_dash_space');


文章来源: codeigniter alpha_numeric form validation not accepting space