在HTML联系人表单中设置reCAPTCHA



我的网站上有一个联系表格,其中包含了一个reCAPTCHA。客户端正在工作;但是,服务器端有一个问题。GooglereCAPTCHA网站的服务器端集成页面提供了一个密钥、响应和远程IP的表。我已经将它们包含在我的代码中,但我不知道该包含什么作为响应,因为表上写着:

响应:必需。reCAPTCHA提供的用户响应令牌您网站上的客户端集成。

这是我的PHP代码:

$secretKey="";
$responseKey=$_POST['g-recaptcha-response'];
$UserIP = $_SERVER['REMOTE_ADDR'];
$url="...siteverify?secret=$secretKey$response=$responseKey&remoteip=$UserIP";
$response = file_get_contents($url);
$response = json_decode($response);
if($response->success){
do something
}
else{
Display error message
}

目前,这不起作用,代码正在执行if的其他部分,即使用户已经验证。我不确定$response的价值,所以我猜这就是问题所在。如何解决此问题?是因为$response吗?如果是,我应该在这里给$response多少值:

$responseKey=$_POST['g-recaptcha'];

我想你只是打字有误。URL字符串中的响应前有一个"$",因此它被解释为一个PHP变量,目前尚未定义。这应该是一个和号(&(。

这可能不是唯一的问题,但这是我看到的第一件事。

最新更新