我有一个用户名字段,我不想接受像{*)&(%^%()_}
这样的字符。我需要添加到我的表单验证规则中?如何防止使用Codeigniter表单验证的特殊字符?
$this->form_validation->set_rules('user_name' 'User Name', 'trim|required|min_length[4]|xss_clean');
我有一个用户名字段,我不想接受像{*)&(%^%()_}
这样的字符。我需要添加到我的表单验证规则中?如何防止使用Codeigniter表单验证的特殊字符?
$this->form_validation->set_rules('user_name' 'User Name', 'trim|required|min_length[4]|xss_clean');
只看了doc。这并不难。
如果要将用户名字符限制为字母和数字,请使用alpha_numeric
规则。
$this->form_validation->set_rules('user_name', 'User Name', 'trim|required|min_length[4]|xss_clean|alpha_numeric');
,但如果你想限制只能由字母,使用alpha
规则。或者,如果您想将用户名限制为字母,数字,下划线和破折号,请使用alpha_dash
规则。
非常感谢@kemal它真的非常有帮助它的工作 – 2012-04-23 05:46:53
@ArunKumar,请点击“V”在这个答案旁边接受它。这样做有两点:它向其他用户显示该问题具有满意的答案(不需要新的答案)。对于凯末尔的努力,它以[声誉](http://stackoverflow.com/faq#reputation)的形式表示赞赏。 – Mischa 2012-04-23 09:20:51
@Mischa ok im doing it – 2012-04-23 12:03:11
你应该使用回调函数来检查,如果用户名与模式匹配:
$this->form_validation->set_rules('username', 'Username', 'username_check');
....
public function username_check($str)
{
if ($str == 'test')
{
$this->form_validation->set_message('username_check', 'The %s field can not be the word "test"');
return FALSE;
}
else
{
return TRUE;
}
}
毫无疑问,在这里...请尝试重组,并问一个问题。 – Mischa 2012-04-23 05:12:44
...并且不要忘记解释你已经尝试了什么以及你卡在哪里。 – 2012-04-23 05:13:25
限制在用户名中使用特殊字符,即使用codeigniter框架。 $ this-> form_validation-> set_rules('user_name','用户名','trim | required | min_length [4] | xss_clean');我已经给出了一些用户名的规定,现在我想在用户名字段中设置限制,并希望在上面的代码行中添加更多的代码。 im卡在这里 – 2012-04-23 05:21:34