thinkPHP中验证码的简单使用方法


Posted in PHP onDecember 26, 2015

本文实例讲述了thinkPHP中验证码的简单使用方法。分享给大家供大家参考,具体如下:

首先生成验证码,在action文件中,直接调用thinkphp中提供的方法即可生成,确保开启php的扩展 gd2

如下:

class UserAction Model extends Model
{
/**
 * 显示验证码信息
 */
 public function verify()
 {
     ob_clean(); // 清空(擦掉)输出缓冲区 ,也就是清空前面的输出,通常情况下验证码不显示,可考虑这个问题
     import('ORG.Util.Image');
     Image::buildImageVerify();
  }
}

同时用SESSION保存生成的验证码的值:

$_SESSION['verify']

注意:保存的是用md5加密之后的值

在对应的tpl文件中,对该验证码进行调用,使用方法如下:

<img src="__APP__/User/verify" onclick="this.src='__APP__/User/verify/id/'+Math.random()">
可实现点击刷新功能

显示效果如下:

thinkPHP中验证码的简单使用方法

用户提交过去的验证码,需要md5加密之后,在与保存的session值进行比较,即:

判断  md5($_POST['verify']  与  $_SESSION[‘verify']  是否相等。

至此完成验证码的基本使用

希望本文所述对大家基于thinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php注入实例
Oct 09 PHP
利用discuz自带通行证整合dedecms的方法以及文件下载
Mar 06 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
url decode problem 解决方法
Dec 26 PHP
php定时计划任务的实现方法详解
Jun 06 PHP
ThinkPHP分页实例
Oct 15 PHP
Laravel 4 初级教程之安装及入门
Oct 30 PHP
php中get_object_vars()方法用法实例
Feb 08 PHP
浅谈mysql_query()函数的返回值问题
Sep 05 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
ajax+php实现无刷新验证手机号的实例
Dec 22 PHP
PHP使用文件锁解决高并发问题示例
Mar 29 PHP
分享50个提高PHP执行效率的技巧
Dec 26 #PHP
PHP获取二维数组中某一列的值集合
Dec 25 #PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
Dec 25 #PHP
WordPress中创建用户角色的相关PHP函数使用详解
Dec 25 #PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
Dec 25 #PHP
给WordPress的编辑后台添加提示框的代码实例分享
Dec 25 #PHP
smarty高级特性之对象的使用方法
Dec 25 #PHP
You might like
DC这些乐高系列动画电影你看过几部?
2020/04/09 欧美动漫
PHP的分页功能
2007/03/21 PHP
PHP 的ArrayAccess接口 像数组一样来访问你的PHP对象
2010/10/12 PHP
thinkphp控制器调度使用示例
2014/02/24 PHP
php中实现精确设置session过期时间的方法
2014/07/17 PHP
PHP采用get获取url汉字出现乱码的解决方法
2014/11/13 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
php实现登录页面的简单实例
2019/09/29 PHP
juqery 学习之三 选择器 简单 内容
2010/11/25 Javascript
jquery foreach使用示例
2013/09/12 Javascript
轻松创建nodejs服务器(7):阻塞操作的实现
2014/12/18 NodeJs
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
Angular使用cli生成自定义文件、组件的方法
2018/09/04 Javascript
vue-cli 3.x 修改dist路径的方法
2018/09/19 Javascript
Node.js如何优雅的封装一个实用函数的npm包的方法
2019/04/29 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
js DOM的事件常见操作实例详解
2019/12/16 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
2020/02/05 Javascript
vue实现信息管理系统
2020/05/30 Javascript
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
[01:01:14]完美世界DOTA2联赛PWL S2 SZ vs Rebirth 第一场 11.21
2020/11/23 DOTA
写了个监控nginx进程的Python脚本
2012/05/10 Python
matplotlib subplots 设置总图的标题方法
2018/05/25 Python
Python绘制KS曲线的实现方法
2018/08/13 Python
Python学习笔记之列表推导式实例分析
2019/08/13 Python
python nmap实现端口扫描器教程
2020/05/28 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
使用css实现android系统的loading加载动画
2019/07/25 HTML / CSS
澳大利亚窗帘商店:Curtain Wonderland
2019/12/01 全球购物
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
2014年最新个人对照检查材料范文
2014/09/25 职场文书
作风转变年心得体会
2014/10/22 职场文书
故意伤害辩护词
2015/05/21 职场文书
经典哲理警句:志不真则心不热,心不热则功不贤
2019/11/14 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle