一个在服务器端,一个在客户端..... 你要用AJAX来获取服务器端的验证码,然后对比

解决方案 »

  1.   

    把生成的验证码存入cookie  然后用ajax把输入的字符串传到php页面进行判断是否和cookie里面的相等
      

  2.   

    var verify_code = <?php echo $_SESSION['verify_code']>;
    var code   = $("#code").val();
    if (verify_code != code){
        alert("验证码不一致");
        return false;
    }
      

  3.   

    少了?<?php echo $_SESSION['verify_code']?>;
      

  4.   

    js判断不了。
    正确做法:js是将用户输入的验证码,用ajax传到服务器比对,再返回结果的。
      

  5.   

    我现在是用了个文本框显示session值在js文件中取文本框的值,但session值总是比图片上的验证码慢一步
      

  6.   

    你把验证码值写在表单里?
    <input type="hidden" name="hidden" value"<?php echo $_SESSION['checkCode']?>" id="hidden">
    先不说会慢一拍,你这样做不就没有意义了吗?
    验证码是为了防止机器人连续提交的,你提供了验证码文本不是更容易识别了吗?验证码是在执行 ValidationCode.php 是才产生的,你 echo $_SESSION['checkCode'] 时,验证码还未产生呢
      

  7.   

    那我js文件怎么调用session值呢,
      

  8.   

    session_start();
    if($_POST['ValidateCode'] != $_SESSION['checkCode']) {
      die('验证码错');
    }
      

  9.   

    这个result显示出来图片上的值,但判断总是提示错误
      

  10.   

    通过 ajax 也是在服务端验证
      

  11.   

    function showcode(){


    S_XMLHttpRequest();
    xmlhttp.open("POST","vcode_check.php",true);
    xmlhttp.onreadystatechange=code;//准备就绪
    xmlhttp.send(null);//发送
    var img=document.myform.hidden.value;
      

    }
    function code(){


    if(xmlhttp.readyState==4){
    if(xmlhttp.Status=200){
    var result=xmlhttp.responseText;
    var c=document.myform.validateCode.value;
    alert(result.toLowerCase());
    alert(c.toLowerCase());
    if(c=="")
    {
       document.getElementById('showcode').innerHTML="<font color=red>验证码不能为空</font>";
    document.myform.verify.focus();
    }
     if(c.toLowerCase()!=result.toLowerCase())
    {
       document.getElementById('showcode').innerHTML="<font color=red>验证码错误</font>";
    document.myform.verify.focus();
    }
     
    }
    }
    }
      

  12.   

    你把表单中填写的验证码值发送到 vcode_check.php 中
    在 vcode_check.php 中判断是否正确
      

  13.   

    我js中alert(c.toLowerCase());这个提示显示的是正确的
      

  14.   

    那我现在是从哪边改呢,我现在不是用了ajax了吗
      

  15.   

    我表单元素在a.php中我如何在b.php中取出表单的某个输入值
      

  16.   

    不要用混编  html一个页面 ajax提交的数据又是一个php页面
    把html表单通过js用ajax提交到php  进行对比  例如正确返回1 错误返回0  然后在js里面判断返回的是1还是0