2012-05-06 6 views
4

これは私のウェブサイトでのrecaptchaの使用で初めてのことです。Google reCaptchaさん:無効なリクエスト - クッキー

私はreCAPTCHAのを検証するためにPHPのAPIを使用してい

、それは言い続けinvalid-request-cookie

私がwww.example.comがexample.comと異なっている別のフォーラムで見つけたので、私はwwwせずにもう一度私のサイトを登録しかし、まだ動作していません。

recaptcha_response_fieldrecaptcha_challenge_fieldの値が正しいことを確認してください。ここ

は、キャプチャチェッカーです:ここ

require_once(recaptchalib.php'); 

$publickey = "not displayed"; //for security 
$privatekey = "not displayed"; //for security 
$error = null; 

if($_POST) { 
    $arr = array('a' => $_POST['task'], 'b' => $_POST['recaptcha_challenge_field'], 'c' => $_POST['recaptcha_response_field']); 

    if(trim($arr['a']) == 'captcha') { 
     $resp = null; 
     $error = null; 
     $captcha_result = 'success'; 
     $resp = recaptcha_check_answer($privatekey, $_SERVER["REMOTE_ADDR"], $arr['b'], $arr['c']);  

     if($resp->error){ 
      $captcha_result = 'fail'; 
     } 
     echo $captcha_result; 
    } 
} 

はHTMLコードです:

   <div id="captcha-div"> 
       <script type="text/javascript"> 
          var RecaptchaOptions = { 
           tabindex: 1, 
           theme: 'custom', 
           custom_theme_widget: 'recaptcha_widget' 
          }; 
         </script> 
       <div id="recaptcha_widget" style="display:none"><div id="recaptcha_image" style="width: 200px; height: 57px; "></div> 
       <?php echo recaptcha_get_html($publickey, $error); ?> 
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Try Again.</div> 
       <span class="recaptcha_only_if_audio">Type what you hear</span> 
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field"> 
       <div class="recaptcha_only_if_audio"><a href="javascript:Recaptcha.switch_type(&#39;image&#39;)">Kumuha ng larawang CAPTCHA</a></div> 

       <script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=6Le_X88SAAAAAAH3NEbkIr3w75SEQnQYwl96Y7f0"></script> 
       <noscript><iframe src="http://www.google.com/recaptcha/api/noscript?k=6Le_X88SAAAAAAH3NEbkIr3w75SEQnQYwl96Y7f0" height="300" width="500" frameborder="0"></iframe><br> 
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"> 
          </textarea> 
       <input type="hidden" name="recaptcha_response_field" value="manual_challenge"></noscript></div> 
       <script type="text/javascript"> 
        window.onload = function() { 
         Recaptcha.focus_response_field(); 
        } 
       </script> 
       <p id="captcha-error" style="color:red; font-weight:bold;"></p> 
      </div> 
      <div><a id="captcha-refresh" href="javascript:Recaptcha.reload()"></a></div> 
      <div class="recaptcha_only_if_image"><a id="captcha-audio" href="javascript:Recaptcha.switch_type(&#39;audio&#39;)"></a></div> 
      <div><a id="captcha-help" href="javascript:Recaptcha.showhelp()"></a></div> 
      <div id="circle-submit"></div> 

誰もがこの問題で私を助けることができますか?

おかげで、reCAPTCHA Support saysとして ジャスティン

+0

コードとCookieをgoogle recapchaに渡すことはできますか? –

+0

また、サイト全体をグローバルにしようとしています:https://www.google.com/recaptcha/admin/ –

+0

@daniilr - はい、グローバルを使用するにはチェックボックスをオンにします。どのように私はグーグルに渡されるクッキーを得ることができますか?私はまた、captchaチェッカーのコードを配置します.. – justin

答えて

2

いいえ、これは無効なドメインにはなりません。つまり、recaptcha_challenge_fieldをサーバーに正しく送信していないということです。

したがって、recapcha corectlyを使用してフォームをレンダリングしてください。 this linkをチェックしてください。

+0

うーん..正しい 'recaptcha_challenge_field'を渡すかどうかチェックする方法? 'recaptcha_challenge_field'を確認するとjavascriptが得られるので、それはちょうど同じです.. – justin

+0

フォームのHTML部分を投稿してください。 –

+0

私はHTMLコードを投稿しました。 – justin

関連する問題