如何验证recaptcha和其余的验证程序(其他脚本)

时间:2016-06-19 19:05:03

标签: php validation recaptcha

我有一个表单(login.php)来获取我必须验证的用户名和密码(index.php)。这工作正常,但现在我需要添加recaptcha以防止机器人。

我按照本教程看起来很好,但我的问题(据我所知,代码)是:如果我知道recaptcha验证好(成功),现在如何将登录参数传递给验证(index.pxp)。

教程:http://webdesign.tutsplus.com/tutorials/how-to-integrate-no-captcha-recaptcha-in-your-website--cms-23024

我的login.php是这样的:

<?php // To learn how this works
foreach ($_POST as $key => $value) {
  echo '<p><strong>' . $key.':</strong> '.$value.'</p>';
}

require_once "recaptchalib.php";

$mysecret = "6LeR9C8oDC4ekXQ4";
$myresponse = null;
$reCaptcha = new ReCaptcha($mysecret);

if ($_POST["g-recaptcha-response"]) { // si se detecta la respuesta como enviada
$myresponse = $reCaptcha->verifyResponse($_SERVER["REMOTE_ADDR"], $_POST["g-recaptcha-response"]);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Login Form</title>
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<link rel="stylesheet" href="my.css" type="text/css" />
</head>
<body>
<?php /*<form action="index.php" method="post">*/ ?>
<form action="" method="post">
<input  name="from" value="true" type="hidden" />
<table align="center">
<tr valign="top">
  <td>Nombre de usuario:</td>
  <td><input type="text" name="login" /></td>
</tr>
<tr valign="top">
  <td>Contraseña:</td>
  <td><input type="password" name="password" /></td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr><td>&nbsp;</td><td><div class="g-recaptcha" data-sitekey="6LeR9idR-NV-NFWCsdfsyJu"></div></td></tr>
<tr><td>&nbsp;</td></tr>
<tr valign="top">
  <td>&nbsp;</td>
  <td><input class="button" type="submit" value=" Enviar " /></td>
</tr>
</table>
</form>
<script src="https://www.google.com/recaptcha/api.js?hl=es" async defer></script>
</body>
</html>

任何建议表示赞赏

1 个答案:

答案 0 :(得分:0)

嗯,比我想象的要容易得多。只需而不是action =“”实际target =“index.php”工作正常。在那里,我只是检查了正确的反应,我有我需要的一切。

我不知道我是否误读了文档,或者没有关于此的文档。