Ошибка проверки reCaptcha - PullRequest
       10

Ошибка проверки reCaptcha

0 голосов
/ 19 сентября 2019

Я пытаюсь использовать приведенный ниже код для одного из моих php-проектов, но он не проверяет меня.

<!--Recaptcha verification-->
if(isset($_POST['captcha_verify'])){ 
    $postData = $_POST;
    if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])){
        $secretKey = $settings['secret_key']; 
        $verifyResponse = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.urlencode($secretKey) .'&response='.urlencode($_POST['g-recaptcha-response']));
        $responseData = json_decode($verifyResponse, true);
        if($responseData['success']){
            $alert = 'Congratulations you've been verified as a human.'; 
        } else { 
            $alert = 'Captcha verification failed, please try again.'; 
        } 
    } else { 
        $alert = 'Please check the reCAPTCHA box.'; 
    } 
}

, а форма, в которую встроено поле reCaptcha, выглядит следующим образом:

<!-- ReCaptcha Box -->            
          <div class="text-muted text-center mt-2 mb-4">
            <form action='' method='post'>
              <div id="recaptcha" style="display: inline-block;" class="g-recaptcha" data-sitekey="<?php echo $settings['site_key'];?>"></div><br>
              <button name="captcha_verify" type="submit" class="btn btn-primary">Verify Captcha</button>
              <script src="https://www.recaptcha.net/recaptcha/api.js" async defer></script>
            </form>
          </div>

Я получил этот формат от https://codeforgeek.com/google-recaptcha-tutorial/

...