2011-07-03 10 views
0

誰でもjquery remote:validationメソッドで助けてくれますか?私はjqueryの部分でそれを使用する方法を得たことを意味します。誰も私にサーバー側の部分を教えてもらえますか?私はそれを行うためにPHPとcodeigniterを使用しています。以下の例を考えてみましょう:jqueryの検証プラグインのリモートメソッドで助けてください

$("#myform").validate({ 
    rules: { 
     email: { 
      required: true, 
      email: true, 
      remote: "validate/check" 
     } 
    } 
}); 

これで、検証コントローラのチェック機能のコードは何ですか?

+0

なぜ$ this-> form_validation-> set_rules(blablablabla)ですか? – Gerep

+0

@Gerep:jqueryを検証に使用したいと思います。 – Sanket

答えて

0

まず、リモートファイルが私にはPHPファイル、つまりtest.phpと言わなければならないことを理解する必要があります。

成功の場合は「true」、エラーの場合は「false」を返すファイルを1つ作成することができます。

あなたはプラグイン自体は、入力電子メールの形式を検証し、より詳細here

を見ることができます。また、ここでPHPを使って簡単な電子メールの検証を見ることができます。

http://www.totallyphp.co.uk/code/validate_an_email_address_using_regular_expressions.htm

http://www.builderau.com.au/program/php/soa/Simplify-e-mail-validation-routines-with-PHP/0,339028448,339221002,00.htm

0

ポイントは、あなたが

コントローラの例をjQueryのために検証結果を返すためにecho json_encode(TRUE/FALSE);を使用する必要がある、ということです。

//--------------------------------- 
// EMAIL EXISTS (true or false) 
//--------------------------------- 
private function email_exists($email) 
{ 
    $this->db->where('email', $email); 
    $query = $this->db->get('users'); 
    if($query->num_rows() > 0){ return TRUE; } else { return FALSE; } 
} 

//--------------------------------- 
// AJAX REQUEST, IF EMAIL EXISTS 
//--------------------------------- 
function register_email_exists() 
{ 
    if (array_key_exists('email',$_POST)) { 
    if ($this->email_exists($this->input->post('email')) == TRUE) { 
     echo json_encode(FALSE); 
    } else { 
     echo json_encode(TRUE); 
    } 
    } 
} 

このチュートリアルでは、あなたを助けます理解する http://www.joshuawinn.com/check-if-email-username-exists-with-codeigniter-and-jquery-validation/

関連する問題