Я пытаюсь использовать reCaptcha Google на своем веб-сайте, и после нескольких учебных руководств я использую как следует на моей странице HTML:
<section class="row" id="Contact"> <div class="col-full"> <form method="post" action="contact.php"> <input name="sender" placeholder="Name" size="30"><br><br> <input name="senderEmail" placeholder="Email" size="30"><br><br> <textarea rows="10" cols="30" name="message" placeholder="Message"></textarea><br><br> <div class="g-recaptcha" data-sitekey="6LdFOQcTAAAAABKsku3bD6Mp3HuGYNDRN1tLlSkw"></div><br> <input type="submit" name="submit"> </form> </div> </section>
В теге <head>
:
<script src='https://www.google.com/recaptcha/api.js'></script>
Форма загружает следующий скрипт PHP, как показано в учебнике Google :
<?php require_once('recaptchalib.php'); echo "<pre> _POST: =========\n"; print_r($_POST); echo "\n=========\n</pre>"; $privatekey = "privatekey"; $resp = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if (!$resp->is_valid) { die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." . "(reCAPTCHA said: " . $resp->error . ")"); }
?>
Проблема в том, что я всегда ошибаюсь в ошибке incorrect-captcha-sol
и не могу понять, почему. вывод, который я получаю из скрипта PHP:
_POST: ========= Array ( [g-recaptcha-response] => 03AHJ_VusLbTZVbhMBH2-cyOdbM81IoG7ShDtTmyVa8e34PbghyKaRYnrb4bbeuPoJXFa-2sD5B-UIOWq_zClya-VOtq8iLHXBkAR0PrElQYiQjKTm2POkjci43-yEaenh1tu_M4vKsjJGswKFlVs6IdlWhdVaMdznLBeutgHjiHRBy7fzAi0It0x5IadwMxAqVpmG7F1gRvUcQmakij4ObTqPUK4lPdc84HkkKmY62uJ45d8DwKSeR2ifRg6wL9JFxpcZkjSp4oIlltin2uCMiBDU58QQQLLKPJuSKcmm-N5p7OEt7E6gc4UZyTLpKrJ-9mMUusvLpixwFHop0e5155vEZssxzu6Zizo-LyB1mX3XOrQ8LEceydssgLvl9gJBC4f9zDBKPQdLmjfxVKdPCXLtUZVNbMDYe7cNL7gsgwJC-hLbZYTh6UV1nUdKnFnkHAACjI7M28hpKWdiyIwcJ5UAzTMPfIllMw ) =========
Почему у меня нет recaptcha_challenge_field
или recaptcha_response_field
моего POST и как я могу его решить?