0

我有一个用户名字段,我不想接受像{*)&(%^%()_}. 我需要在表单验证规则中添加什么?

$this->form_validation->set_rules('user_name' 'User Name', 'trim|required|min_length[4]|xss_clean');
4

2 回答 2

5

只需阅读文档。这并不难。

如果要将用户名字符限制为字母和数字,请使用该alpha_numeric规则。

$this->form_validation->set_rules('user_name', 'User Name', 'trim|required|min_length[4]|xss_clean|alpha_numeric');

但如果您只想限制为字母,请使用该alpha规则。或者,如果您想将用户名限制为字母、数字、下划线和破折号,请使用该alpha_dash规则。

于 2012-04-23T05:26:44.160 回答
0

您应该使用回调函数来检查用户名是否与模式匹配:

$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;
    }
}
于 2012-04-23T05:27:32.273 回答