thinkphp不仅封装了验证规则

还封装了验证码

文件的位置是ThinkPHP\Library\Think\Verify.class.php

下面简单的说一下如何使用

我们现在控制器里新建一个方法

function verifyImg(){
//以下类Verify在之前并没有include引入
//走自动加载Think.class.php autoload()
$config = array(
'imageH' => 24, // 验证码图片高度
'imageW' => 105,
'fontSize' => 12,
'fontttf' => '4.ttf', // 验证码字体,不设置随机获取
'length' => 4, // 验证码位数
);
$verify = new \Think\Verify($config);
$verify -> entry();
}

在前台页面,验证码的图片地址只需要请求这个方法就行了

<img src="{$smarty.const.__CONTROLLER__}/verifyImg"  alt="" />

用户提交表单到我们控制器下的Login方法

现在需要判断验证码是否正确

function login(){
if(!empty($_POST)){
//验证码校验
$verify = new \Think\Verify();
if(!$verify->check($_POST['captcha'])){
//echo "验证码错误";
$this -> assign('msg','验证码错误');
} else { }
}
$this -> display();
}

最新文章

  1. 将语音搜索集成到Google Now中
  2. 【UVA 11078】BUPT 2015 newbie practice #2 div2-A -Open Credit System
  3. Scrapy中的item是什么
  4. uva146 ID码
  5. centos 6.5 samba简单配置
  6. Android&mdash;&mdash;&mdash;从GitHub上下载源码的方法【Written By KillerLegend】
  7. js如何判断一个对象是不是Array
  8. 简单改造 starling 中的 AssetManager 让其更适合 批次加载纹理
  9. SQL Server 2005无法远程连接的解决方法
  10. HDU2647(拓扑排序+反向建图)
  11. scanf———while(scanf (&quot;%lu&quot;,&amp;num) = =1)什么意思
  12. Swiper4.x使用方法
  13. 【转】STM32 不占用定时器(包括SysTick)实现精确延时(巧用DWT)
  14. BZOJ.3811.玛里苟斯(线性基)
  15. go标准库的学习-sync互斥
  16. centos下常用文件管理命令
  17. js数组,字符串,json互相转换函数有哪些
  18. hdu2509 Be the Winner 博弈
  19. 【BZOJ4554】【TJOI2016】【HEOI2016】游戏
  20. 【jmeter】jmeter之“参数化”

热门文章

  1. python 爆破
  2. 使用JS监听键盘按下事件(keydown event)
  3. EasyUI动态修改easyui-textbox验证信息
  4. 字体QFont
  5. 《C#数据结构和算法》-排序
  6. android view绘制流程 面试
  7. ROS 多台计算机联网控制机器人
  8. 那些IT行业的经典定律
  9. 『转载』hadoop 1.X到2.X的变化
  10. plsql developer日期类型数据格式不对如何设置?