thinkphp 验证码 的使用小结


Posted in PHP onMay 07, 2017

 thinkphp中的验证码是可以直接调用的,非常方便,我们看一下 Think 文件夹下 有一个名为verify.class.php的文件

   首先 我们要有一个模板,在view文件夹下写了一个名为 xx.html的文件,里面啥也没写, 这时 我们要在这个文件里面显示出验证码来 

function xx()
{
  $this->show();
}
function yzm()
{
  $yzm=new \Think\verify();
  $yzm->entry();
}

想要验证码显示出来,那么我们就需要调一下yzm方法了,在xx.html中表示为

<div>
  <img src="__CONTROLLER__/yzm" id="img1"/>
</div>

这样就可以把验证码调出来了 ,验证码调出来之后我们需要使用它,那么在xx.html中会有一个input表单  会有验证的按钮

<div>
  <input type="text" id="va"/>
  <input type="button" id="btn"/>
</div>

下面我写的js部分用的是jquery  所以前面必须要引入jquery包的

<script type="text/javascript">
  $("#btn").click(function(){
    var va = $("#va").val();
    $.ajax({
     url:"__CONTROLLER__/yz",
     data:{va:va},
     type:"POST",
     dataType:"TEXT",
     success:function(data){
        if(data)
        {
           alert("验证成功");
        }
       else
          {
             alert("验证失败");
          }     
     }

    });
  })

</script>

现在我们去写yz的方法

function yz()
{
  $yzm=new \Think\verify();
  $va=$_POST["va"];
   $aa=$yzm->check($va);
  $this->ajaxReturn($aa,"eval");
}

 这样写完了之后,我们会发现一个问题 就是点击图片的时候不会自动换,那么我们就要给图片加一个点击事件,每点击一次 就让路径再重新走一遍

$("#img1").click(function(){
//如果只是在除了ie浏览器的其他浏览器上运行 
 $(this).attr("src","__CONTROLLER__/yzm");
//如果要增加其兼容性的话,那么我们就要取一个随机数了

$a=Math.random()*10;
 $(this).attr("src","__CONTROLLER__/yzm/aa"+a);

})
PHP 相关文章推荐
php中理解print EOT分界符和echo EOT的用法区别小结
Feb 21 PHP
php 连接mssql数据库 初学php笔记
Mar 01 PHP
PHP的SQL注入过程分析
Jan 06 PHP
手把手教你打印出PDF(关于fpdf的简单应用)
Jun 25 PHP
PHP取二进制文件头快速判断文件类型的实现代码
Aug 05 PHP
php一些错误处理的方法与技巧总结
Aug 10 PHP
浅析PHP微信支付通知的处理方式
May 25 PHP
ThinkPHP分页实例
Oct 15 PHP
用 Composer构建自己的 PHP 框架之构建路由
Oct 30 PHP
PHP 9 大缓存技术总结
Sep 17 PHP
PHP引用的调用方法分析
Apr 25 PHP
PHP编写文件多服务器同步程序
Jul 02 PHP
解析 thinkphp 框架中的部分方法
May 07 #PHP
ThinkPHP 模板引擎使用详解
May 07 #PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 #PHP
Laravel中任务调度console使用方法小结
May 07 #PHP
Laravel实现表单提交
May 07 #PHP
Laravel实现autoload方法详解
May 07 #PHP
PHP中include和require的区别实例分析
May 07 #PHP
You might like
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
php反弹shell实现代码
2009/04/22 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
解析php二分法查找数组是否包含某一元素
2013/05/23 PHP
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
THINKPHP支持YAML配置文件的设置方法
2015/03/17 PHP
thinkPHP多表查询及分页功能实现方法示例
2017/07/03 PHP
详解new function(){}和function(){}() 区别分析
2008/03/22 Javascript
javascript 建设银行登陆键盘
2008/06/10 Javascript
jQuery find和children方法使用
2011/01/31 Javascript
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
2013/04/02 Javascript
浅谈javascript的调试
2015/01/28 Javascript
jQuery oLoader实现的加载图片和页面效果
2015/03/14 Javascript
微信小程序 下拉菜单的实现
2017/04/06 Javascript
详解Node.js中exports和module.exports的区别
2017/04/19 Javascript
Javascript中从学习bind到实现bind的过程
2018/01/05 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
vue2使用keep-alive缓存多层列表页的方法
2018/09/21 Javascript
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
2019/11/12 Javascript
[41:52]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第二场 2月22日
2021/03/11 DOTA
Python常用正则表达式符号浅析
2014/08/13 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
python针对excel的操作技巧
2018/03/13 Python
在Pycharm terminal中字体大小设置的方法
2019/01/16 Python
机器学习实战之knn算法pandas
2019/06/22 Python
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
2020/03/08 Python
完美解决ARIMA模型中plot_acf画不出图的问题
2020/06/04 Python
Python pip使用超时问题解决方案
2020/08/03 Python
如何快速一次性卸载所有python包(第三方库)呢
2020/10/20 Python
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
医药类个人求职的自我评价
2014/02/12 职场文书
事假请假条范文
2014/04/11 职场文书
考核评语大全
2014/04/29 职场文书
跑吧孩子观后感
2015/06/10 职场文书
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL