Thinkphp 3.2.2 验证码check_verify方法,只能验证一次


问题:

Thinkphp 3.2.2 验证码check_verify方法,只能验证一次。

function check_verify($code, $id = ''){
$verify = \Think\Verify();
return $verify->check($code, $id);
}
一般通常我们做的网站,验证码都会验证两次,一次是前台Ajax的提交验证,然后用户提交到后台再验证一次。但是用上面的check_verify第一次Ajax验证正确,但是提交到后台php再次调用函数check_verify,验证失败false。

js端验证code



function
checkCode(oo){ var patt = /^\w{4}$/; if(!patt.test(oo.value)){ $('#errVer').html('验证码输入不对'); return false; }else{ //利用Ajax实现:验证码是否正确 var url = '/index.php/Home/User/checkVerify/verifyCode/'+oo.value; /*alert(url); */ $.get(url,function(res){ if(res==true){ $('#errVer').html(''); }else{ $('#errVer').html('验证码错误,请刷新验证码'); return true; } }); }
  
return false;
}

服务器端

<?php
namespace Home\Controller;
use Think\Controller;
use Think\Verify;
//生成验证码方法
    public function verify(){
        $Verify = new Verify();
        $Verify->reset = true;
        $Verify->length = 4;
        $Verify->useNoise = false;
        $Verify->entry();
    } }


    //验证码是否正确
    
    public function checkVerify(){
        $Verify = new Verify();
        $Verify->reset = false;
        if($Verify->check(I('get.verifyCode'))){
            echo 1;
        }else{
            echo  0;
        }
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM