ReCaptcha продолжает говорить им бота, никогда не преуспевает?

Я использовал старый ReCaptcha на моем сайте, но только обновляюсь до новой ReCaptcha, у меня есть 3-4 разных учебника, но он продолжает терпеть неудачу и дает ошибку сбоя.

HTML

<form method="POST" action="/feedback_sent/" enctype="multipart/form-data"> <table border="0" width="100%" cellpadding="4" cellspacing="4" height="67"> <tr> <td width="30%" height="30">Name</td> <td width="70%" height="30"> <p><input type="text" name="name" size="41"></p> </td> </tr> <tr> <td valign="top" width="30%" height="27">Feedback</td> <td width="70%" height="27"> <textarea rows="8" name="feedback" cols="57"></textarea></td> </tr> <tr> <td valign="top" width="30%" height="27"></td> <td width="70%" height="27"> <div class="g-recaptcha" data-sitekey="My_Key"></div> </td> </tr> <tr> <td width="100%" colspan="2"> <p align="center"><input type="submit" value="Submit" name="B1"></td> </tr> </table> </form> 

PHP:

  $secret="---my key---"; $response=$_POST["g-recaptcha-response"]; $verify=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret={$secret}&response={$response}"); $captcha_success=json_decode($verify); if ($captcha_success->success==false) { echo "<p>You are a bot! Go away!</p>"; } else if ($captcha_success->success==true) { echo "<p>You are not not a bot!</p>"; } 

Шаг 1:

Здесь вам нужно создать публичный и закрытый ключ.

Шаг 2:

Включите эту библиотеку для обработки информации на сервере.

Код:

 <?php $public = "yourkey"; $private = "yourkey"; $lang = "en"; if(isset($_POST['submit'])){ if(array_key_exists('g-recaptcha-response', $_POST)){ require 'path/to/recaptcha/autoload.php'; $c = new ReCaptcha\ReCaptcha($private); $r = $c->verify( $_POST["g-recaptcha-response"], $_SERVER["REMOTE_ADDR"] ); if($r->isSuccess()){ echo 'success'; } else { echo 'failed'; } } else { die('client failure, enable js or update browser'); } } else { die('form failure'); } ?> <!DOCTYPE html> <html lang="en"> <head> <title>ReCaptcha 2.0</title> </head> <body> <form action="<?= $_SERVER['PHP_SELF'] ?>" method="post"> <input for="email" name="email" type="email" required> <input for="password" name="password" type="password" required> <div class="g-recaptcha" data-sitekey="<?= $public ?>"></div> <input type="submit" name="submit" value="Submit"> </form> <script src='https://www.google.com/recaptcha/api.js?hl=<?= $lang ?>'></script> </body> </html> 

Это скажет либо success либо failed зависимости от ввода.