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 に答える