我想设置表单验证,以便用户无法添加特殊字符,如$,@,&等等...只允许使用字母数字字符
$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');
当我用空格添加类别名称时,我得到以下错误 “类别名称字段只能包含字母数字字符。” 当我添加没有空格或单个单词的类别名称时,其工作正常
答案 0 :(得分:3)
答案 1 :(得分:1)
好吧,alpha_numeric
不允许空格通过。您可以编写自己的函数并将其传递给Codeigniter form validation. Alpha and spaces),而不是使用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');