thinkphp 验证码 的使用小结
thinkphp中的验证码是可以直接调用的,非常方便,我们看一下Think文件夹下有一个名为verify.class.php的文件
首先我们要有一个模板,在view文件夹下写了一个名为xx.html的文件,里面啥也没写,这时我们要在这个文件里面显示出验证码来
functionxx() { $this->show(); } functionyzm() { $yzm=new\Think\verify(); $yzm->entry(); }
想要验证码显示出来,那么我们就需要调一下yzm方法了,在xx.html中表示为
这样就可以把验证码调出来了,验证码调出来之后我们需要使用它,那么在xx.html中会有一个input表单 会有验证的按钮
下面我写的js部分用的是jquery 所以前面必须要引入jquery包的
$("#btn").click(function(){ varva=$("#va").val(); $.ajax({ url:"__CONTROLLER__/yz", data:{va:va}, type:"POST", dataType:"TEXT", success:function(data){ if(data) { alert("验证成功"); } else { alert("验证失败"); } } }); })
现在我们去写yz的方法
functionyz() { $yzm=new\Think\verify(); $va=$_POST["va"]; $aa=$yzm->check($va); $this->ajaxReturn($aa,"eval"); }
这样写完了之后,我们会发现一个问题就是点击图片的时候不会自动换,那么我们就要给图片加一个点击事件,每点击一次就让路径再重新走一遍
$("#img1").click(function(){ //如果只是在除了ie浏览器的其他浏览器上运行 $(this).attr("src","http://dh.wk163.com__CONTROLLER__/yzm"); //如果要增加其兼容性的话,那么我们就要取一个随机数了 $a=Math.random()*10; $(this).attr("src","http://dh.wk163.com__CONTROLLER__/yzm/aa"+a); })