Forms ReCaptcha 2.0-页面加载时出现错误;缺少输入响应“;
我又回来了。问题就在这里。在实现ReCaptcha 2.0时,我从Github下载了该文件,并完成了所有指示的操作(显然不是这样,否则我就不会有问题)。我的表单会自动加载,并在提交按钮上方显示“缺少输入响应”错误。但是,我可以填写并提交表格,表格会重定向到“谢谢”页面。如果我试图提交表单而不选中复选框,它会给出错误(这是好的),但无论发生什么,错误都存在。我需要做什么?我真的很感激任何帮助 这是我的代码:Forms ReCaptcha 2.0-页面加载时出现错误;缺少输入响应“;,forms,validation,recaptcha,Forms,Validation,Recaptcha,我又回来了。问题就在这里。在实现ReCaptcha 2.0时,我从Github下载了该文件,并完成了所有指示的操作(显然不是这样,否则我就不会有问题)。我的表单会自动加载,并在提交按钮上方显示“缺少输入响应”错误。但是,我可以填写并提交表格,表格会重定向到“谢谢”页面。如果我试图提交表单而不选中复选框,它会给出错误(这是好的),但无论发生什么,错误都存在。我需要做什么?我真的很感激任何帮助 这是我的代码: <?php require('recaptcha-master/src/a
<?php
require('recaptcha-master/src/autoload.php');
$siteKey = 'MY SITE KEY';
$secret = 'MY SECRET KEY';
$recaptcha = new \ReCaptcha\ReCaptcha($secret, new \ReCaptcha\RequestMethod\SocketPost());
$gRecaptchaResponse = $_POST['g-recaptcha-response']; //google captcha post data
$remoteIp = $_SERVER['REMOTE_ADDR']; //to get user's ip
$recaptchaErrors = ''; // blank variable to store error
$resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp); //method to verify captcha
if ($resp->isSuccess()) {
// send mail or insert in db or do whatever you wish to
$emailbody = 'Name: '.$_POST['name']."\n"
.'Phone: '.$_POST['phone']."\n"
.'Email: '.$_POST['email']."\n"
.'Message: '.$_POST['message'];
mail('newsong80@maxxsouth.net', 'More Information', $emailbody);
echo "<meta http-equiv='refresh' content=\"0; url=thankyou.php\">";
} else {
$recaptchaErrors = $resp->getErrorCodes(); // set the error in varible
}
?>
**Here is my form:**
<form action="contact.php" method="POST" title="Contact us for more information">
<p><b>Name:<br>
</b>
<input name="name" type="text" required id="name" tabindex="1" value="" size="50" maxlength="50"/>
<br/> Phone:
<br>
<input name="phone" type="text" id="phone" tabindex="2" value="" size="50" maxlength="50"/><br/>
<b>E-mail:</b><br>
<input name="email" type="text" id="email" tabindex="3" value="" size="50" maxlength="25"/><br/>
<br>
<b>Message:</b><br/>
<textarea name="message" cols="60" rows="10" maxlength="150" id="message" tabindex="4"></textarea><br>
<br>
<div class="g-recaptcha" data-sitekey="MY SITE KEY"></div>
<br>
<?php
if ( isset( $recaptchaErrors[ 0 ] ) )
echo $recaptchaErrors[ 0 ];
?>
<p> </p>
<p><input name="submit" type="submit" formmethod="POST" onClick="MM_validateForm('name','','R','phone','','NisNum','email','','RisEmail','message','','R');return document.MM_returnValue" value="Submit">
</p>
</form>
我找到了正在工作的
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://www.google.com/recaptcha/api/siteverify?");
curl_setopt($ch, CURLOPT_POST, 1);
$campos=array('secret'=>$secreto,'response'=>$TheResponse);
curl_setopt($ch, CURLOPT_POSTFIELDS,$campos);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$ch_exec = curl_exec($ch);
$respuesta_google = json_decode($ch_exec,true);
var_dump($ch_exec);
var_dump($respuesta_google);
curl_close ($ch);
如果有人能帮忙,我仍然需要一个答案。如果在这个网站上得到了答复,我就找不到了。谢谢