2011-01-28 18 views
-1

この2つのJavascript ajaxスクリプトをマージする方法を知りたいと思います。だから私のログイン情報は、ユーザー名とパスワードの一致だけでなく、recaptchaが動作する私のDBをチェックします。私は非常に小さなjavascriptの経験があります。ありがとうございました。これらの両方が答えをエコーするので、私はそれぞれのために働く必要がある2つの異なるPHPページ。Recaptchaログインページ

ログインスクリプト。

<script language="javascript"> 
$(document).ready(function() 
{ 
    $("#login_form").submit(function() 
    { 
     //remove all the class add the messagebox classes and start fading 
     $("#msgbox").removeClass().addClass('messagebox').text('Validating....').fadeIn(1000); 
     //check the username exists or not from ajax 
    $.post("ajax_login.php",{ user_name:$('#username').val(),password:$('#password').val(),rand:Math.random() } ,function(data) 
     { 
      if(data=='yes') //if correct login detail 
      { 
      $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox 
      { 
       //add message and change the class of the box and start fading 
       $(this).html('Logging in.....').addClass('messageboxok').fadeTo(900,1, 
       function() 
       { 
       //redirect to secure page 
       document.location='edujob.php'; 
       }); 
      }); 
      } 
      else 
      { 
      $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox 
      { 
       //add message and change the class of the box and start fading 
       $(this).html('incorrect').addClass('messageboxerror').fadeTo(900,1); 
      });  
      } 

     }); 
     return false; //not to post the form physically 
    }); 
    //now call the ajax also focus move from 

}); 
</script> 

reCAPTCHAのスクリプト

function validateCaptcha() 
{ 
    challengeField = $("input#recaptcha_challenge_field").val(); 
    responseField = $("input#recaptcha_response_field").val(); 
    //alert(challengeField); 
    //alert(responseField); 
    //return false; 
    var html = $.ajax({ 
    type: "POST", 
    url: "ajax.recaptcha.php", 
    data: "recaptcha_challenge_field=" + challengeField + "&recaptcha_response_field=" + responseField, 
    async: false 
    }).responseText; 

    if(html == "success") 
    { 
     $("#captchaStatus").html("YES"); 
     // Uncomment the following line in your application 
     return false; 
    } 
    else 
    { 
     $("#captchaStatus").html("Your captcha is incorrect. Please try again"); 
     Recaptcha.reload(); 
     return false; 
    } 
} 
+3

もう一方を追加することを検討しましたか? – meagar

+0

私はそれをする方法を知らないだろう。 – Eric

答えて

0

私はこれが私の探しているおかげで動作しますね。

<script language="javascript"> 

    function validateCaptcha() 
    { 
     challengeField = $("input#recaptcha_challenge_field").val(); 
     responseField = $("input#recaptcha_response_field").val(); 
     $("#msgbox").removeClass().addClass('messagebox').text('Validating....').fadeIn(1000); 
     //alert(challengeField); 
     //alert(responseField); 
     //return false; 
     var html = $.ajax({ 
     type: "POST", 
     url: "ajax.recaptcha.php", 
     data: "recaptcha_challenge_field=" + challengeField + "&recaptcha_response_field=" + responseField, 
     async: false 
     }).responseText; 

     if(html == "success") 
     { 
      $("#captchaStatus").html("YES"); 
      $.post("ajax_login.php",{ user_name:$('#username').val(),password:$('#password').val(),rand:Math.random() } ,function(data) 
      { 
       if(data=='yes') //if correct login detail 
       { 
       $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox 
       { 
        //add message and change the class of the box and start fading 
        $(this).html('Logging in.....').addClass('messageboxok').fadeTo(900,1, 
        function() 
        { 
        //redirect to secure page 
        document.location='edujob.php'; 
        }); 
       }); 
       } 
       else 
       { 
       $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox 
       { 
        //add message and change the class of the box and start fading 
        $(this).html('Incorrect username or password').addClass('messageboxerror').fadeTo(900,1); 
       });  
       } 

      }); 
      return false; 
     } 
     else 
     { 
      $("#captchaStatus").html("Your captcha is incorrect. Please try again"); 
      Recaptcha.reload(); 
      return false; 
     } 
    } 
    </script>