2011-01-23 4 views
0

Oは、フィールドがjQueryによって事前に設定されている形式です。ユーザーがフィールドをクリックすると、フィールドは空になり、情報が入力されます。しかし、各フィールドに情報を入力しなければ、デフォルト値が提出されます。私はCodeigniterの組み込み検証を使用して、ユーザーがファーストネーム「ファーストネーム」のアカウントを作成することを禁止したいと考えています。Codeigniterのフォーム検証に組み込まれている単語を禁止する方法はありますか?

こちらをご覧ください:

おかげで、 ブレイク

答えて

1

otis.team2648.com/auth/registerあなたは、コールバック関数を使用することができます。

//あなたのルール

$this->form_validation->set_rules('first_name', 'required|callback__no_first_name'); 

//コールバック

function _no_first_name($str) { 
    if ($str !== 'First Name') { 
     return TRUE; 
    } 
    else 
    { 
     $this->form_validation->set_message('_no_first_name', 'You should not have "First Name as the first name"'); 
     return FALSE; 
    } 
} 
+0

私はこれを、使い捨てのソリューションではなく、簡単に再利用できるものにする機会が増えたと考えています。 – jondavidjohn

0

フィールドにデフォルトテキストを値として書き込まないでください!

<input type="text" name="uname" id="uname" placeholder="Your name" /> 

ユーザーがこのフィールドにフォーカスを設定すると、テキストが消えます。しかし、ユーザーが何も挿入しない場合、値は送信されません。

+0

プレースホルダには、主流ではないユーザーサポートhtml5が必要です – jondavidjohn

1

私はForm_validationライブラリを拡張し、あなたが簡単に再利用することができ、より価値のあるフォームの検証ルールにそれを回す...

例を考え -

class MY_Form_validation extends CI_Form_validation { 

    function __construct() { 
     parent::CI_Form_validation(); 
    } 

    function disallow_string($str,$word) 
    { 
     return (strpos($str,$word) === FALSE) ? TRUE : TRUE; 
    } 
} 
(CIのバージョンに関連する情報を変更します) application/libraries

で、あなたの検証でMY_Form_Validation.phpのコード上記

場所は、ちょうどこの

のようなルールを使用します

私が想像できる他の用途と同じように、この同じルールをすべてのフィールドに使用できることに注意してください。

関連する問題