reCAPTCHA v.2 file_get_contents错误

时间:2016-06-22 14:13:37

标签: php wordpress callback file-get-contents recaptcha

我使用google recaptcha在wordpress上制作了自定义注册页面。它工作正常,没有任何错误,但当我将代码复制到新项目时,它无法正常工作。不知道为什么。没有秘密和sitekey错误。

if(!empty($_POST['g-recaptcha-response']))
{
    $gurl = 'https://www.google.com/recaptcha/api/siteverify';
    $gdata = array(
        'secret' => 'secret',
        'response' => $_POST['g-recaptcha-response']
    );

    // use key 'http' even if you send the request to https://...
    $goptions = array(
        'http' => array(
            'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
            'method'  => 'POST',
            'content' => http_build_query($gdata),
        ),
    );
    $gcontext  = stream_context_create($goptions);
    $gresult = file_get_contents($gurl, false, $gcontext);
    var_dump($_POST['g-recaptcha-response']);
    $gresult=json_decode($gresult);
    if(!$gresult->success)
        $register_errors[]='Error reCAPTCHA.';
}

更新

var_dump的输出($ _ POST ['g-recaptcha-response'])是一些字符串,可以进行哈希处理。 $gresult = file_get_contents($gurl, false, $gcontext);FALSE

上提供var_dump($gresult);

0 个答案:

没有答案