Securimage CAPTCHA表格处理

时间:2011-03-23 21:14:25

标签: php forms captcha

我目前正在我的网站上为验证码实施securimage。 the quickstart guide中给出的示例完全正常。但是,我希望它的行为方式与the demo page中的行为方式不同,后者在同一页面上输入错误的验证码时会显示一个消息框。我查看了javascript或Jquery的源代码,它启用了此功能但无法找到任何内容。为实现此功能而赞赏的任何指针。

我想实现的流程是;

- >输入的表单 - >转到“process.php” - >如果“验证码的错误值” - “主要形式的回声”。如何在表单本身上显示echo语句?这就是我想要找到的。不指导用户“process.php”文件并显示错误回显。

以下是部分流程代码,用于确定输入验证码的值是正确还是错误。

    include_once $_SERVER['DOCUMENT_ROOT'] . '/securimage/securimage.php';

$securimage = new Securimage();

if ($securimage->check($_POST['captcha_code']) == false) {
  // the code was incorrect
  // you should handle the error so that the form processor doesn't continue

  // or you can use the following code if there is no validation or you do not know how
  $captchaerror = "The security code entered was incorrect.<br /><br />";
  exit;
}

2 个答案:

答案 0 :(得分:0)

在javascript中无法在客户端进行测试,因为客户端不允许知道答案。如果它确实如此,机器人绕过验证码将是微不足道的。

就像@dagon说的那样,该演示没有在页面中执行检查,而是重新加载同一页面并插入错误消息框html。

答案 1 :(得分:0)

您可以检查服务器端的CAPTCHA,然后返回POST / GET参数,该参数指示用户输入了错误CAPTCHA的PHP脚本。例如:

<?php
    if ($_GET['error']="cap")
        echo "captch error";
    else
    {}//dont echo
?>

我不知道这个securimage,但这应该是可能的。