更改ReCaptcha if else语句

时间:2018-09-04 17:36:51

标签: php ajax

我有一个脚本,该脚本当前具有一个有效的Google ReCaptcha字段,但我希望它使用Google Server检查验证,并且是否存在将错误打印到要由javascript打印的$ error字符串中的错误。 / p>

所以,意思是

如果 [检查验证] 其他 [如果错误显示为$ errors]

但是我不确定如何使用此代码块正确执行此操作:

//Google ReCaptcha
if(isset($_POST['g-recaptcha-response'])) {
   // RECAPTCHA SETTINGS
   $captcha = $_POST['g-recaptcha-response'];
   $ip = $_SERVER['REMOTE_ADDR'];
   $key = 'SECRET_PASSWORD';
   $url = 'https://www.google.com/recaptcha/api/siteverify';

   // RECAPTCH RESPONSE
   $recaptcha_response = file_get_contents($url.'?secret='.$key.'&response='.$captcha.'&remoteip='.$ip);
   $_POST = json_decode($recaptcha_response);

   if(isset($_POST->success) &&  $_POST->success === true) {
       // code goes here
   }
   else {
      die('Your account has been logged as a spammer, you cannot continue!');
   }
}

我的其他区块已通过以下验证:

//Email validation
if ( isset($data["userEmail"]) && !empty( $data["userEmail"] ) ) {
    $email = trim($data["userEmail"]);
    if ( filter_var($email, FILTER_VALIDATE_EMAIL) === false){
        $errors .= "$email is <strong>NOT</strong> a valid email address.<br/>";
    }
} else {
    $errors .= 'Please enter your email address.<br/>';
}

如何使用Google Recaptcha块正确执行此操作?像其余字段一样对待它,执行验证,如果有任何错误,它将打印到$ error字符串中,如果没有错误产生,则继续通过电子邮件发送内容。

0 个答案:

没有答案