使用验证码与javascript焦点更改

时间:2011-03-14 17:58:40

标签: php javascript ajax recaptcha

我有一个表单是验证字段,有一个rand()服务器变量显示在页面上,用户必须键入该代码才能完成验证。当用户从该字段更改焦点时,脚本将打开一个php文件,该文件检查用户使用服务器代码输入的代码的有效性。如果代码匹配,则会向用户显示一个提交表单的按钮,如果输入的代码不正确,则用户会收到错误消息。

<script language="javascript">

$(document).ready(function()
{
$("#usercode").blur(function()
{
    //remove all the class add the messagebox classes and start fading
        $("#msgbox").removeClass().addClass('messagebox').text('Checking...').fadeIn("slow");
    //check the username exists or not from ajax
    $.post("check.php",{ usercode:$(this).val() } ,function(data)
    {
      if(data=='no') //if username not avaiable
      { 
        $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox
        {//alert(data);
          //add message and change the class of the box and start fading
          $(this).html('Your code was incorrect').addClass('messageboxerror') .fadeTo(900,1);
        });     
      }
      else
      {
        $("#msgbox").fadeTo(200,0.1,function()  //start fading the messagebox
        {// alert(data);
          //add message and change the class of the box and start fading
          $(this).html('<input type="submit" value="Post Your Story"/>').addClass('messageboxok').fadeTo(900,1);    
        });
      }

    });

});
});
</script>

/////这就是check.php看起来像\\\\

<?
session_start();

$sescode= $_SESSION['code'];
$usercode = $_POST['user_name'];

if ($sescode==$usercode) {
// What happens when valid
echo("yes");
} else {
// what happens when invalid
 echo "no";
 }
?>

最后有输入字段

<input type="text" id="usercode" name="usercode" />

我需要一种方法来调整此脚本以使用验证码验证工具。我昨天像疯了一样被垃圾邮件,我想要一种方法来调整这个脚本以使用captcha实用程序,我希望验证脚本在从captcha对象更改焦点后运行。谢谢!

编辑:可以在此处查看所述表单的示例:http://www.mybadhookups.com/ist331.php

1 个答案:

答案 0 :(得分:0)

好的,我通过查看你的代码回答了我自己的问题。

在这里查看用于验证码的Keith Woods jQuery插件:http://keith-wood.name/realPerson.html

他甚至在选项卡上有服务器端代码:)