thinkphp验证码使用
在thinkphp中使用验证码很容易,只要调用thinkphp现有的方法就可以。当然,php的GD库肯定是要开的(就是在php.ini中要加载gd模块)。
thinkphp 3.1 --------------------------------------------------------------------------------- 首先,在写Action文件,如:IndexAction.class.php.
<?php
class IndexAction extends Action{
//显示验证码
public function verifyTest() {
$this->display();
} //检验验证码是否正确
public function verifyCheck() {
//防止页面乱码
header('Content-type:text/html;charset=utf-8'); if (md5($_POST['verifyTest']) != Session::get('verify')) {
echo '验证码错误';
}
else {
echo '验证码正确';
}
} // 生成验证码
public function verify() {
import("ORG.Util.Image");
Image::buildImageVerify();
}
}
?>
在对应的模板文件:Tpl\default\index目录下新建文件verifyTest.html,内容如下:
<script type='text/javascript'>
//重载验证码
function freshVerify() {
document.getElementByIdx('verifyImg').src='__URL__/verify/'+Math.random();
}
</script>
<form method='post' action='__URL__/verifyCheck'>
<input type='text' name='verifyTest'>
<img style='cursor:pointer' title='刷新验证码' src='__URL__/verify' id='verifyImg' onClick='freshVerify()'/>
<button type='submit'>确定</button>
</form> thinkphp 3.2 ----------------------------------------------------------------------------- 首先,在写Controllers文件,如:IndexController.class.php. HomeController 是继承 Controller 的父级控制器 也可以直接继承 Controller 在Home文件加下:Home\Common\function.php 添加 一个检测验证码的封装函数 <?php
function check_verify($code, $id="") {
$verify = new \Think\Verify(); return $verify->check($code, $id);
} ?> <?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends HomeController {
//显示验证码
public function index() {
$this->display();
} // 生成验证码
public function verify() {
$arr = array(
'imageW' => , //验证码显示的款地
'imageH' => , //验证码显示的高度
'fontSize'=>, //验证码字体大小
'length' => , //验证码位数
'useNoise'=>false, //关闭验证码杂点 true 开启
'useCurve'=>false, //关闭验证码曲线 true 开启
'bg' => array(,,) //设置背景色
);
$verify = new \Think\Verify($arr);
$verify->entry();
}
//校验验证码
public function verifyCheck() {
//防止页面乱码
header('Content-type:text/html;charset=utf-8');
$verify = I("post.verify");
$result = check_verify($verify);
if ($result) {
echo "验证通过!";
exit;
} else {
echo "验证码错误!";
exit;
}
} }
?>
在对应的模板文件:Views\Index\目录下新建文件index.html,内容如下:
<script type='text/javascript'>
//重载验证码
function freshVerify() {
document.getElementById('verifyImg').src='{:U("Index/verify")}?'+Math.random();
}
</script>
<form method='post' action='{:U("Index/verifyCheck")}'>
<input type='text' name='verify' required='required' />
<img style='cursor:pointer' title='刷新验证码' src='{:U("Index/verify")}' id='verifyImg' onClick='freshVerify()'/>
<button type='submit'>确定</button>
</form>
thinkphp验证码使用的更多相关文章
- ThinkPHP验证码类
//ThinkPHP验证码类使用$config = array( 'fontSize' => 30, // 验证码字体大小 'length' => 3, // 验证码位数 'useNois ...
- thinkphp验证码(总结之后,效率非常好)
thinkphp验证码(总结之后,效率非常好) 一.总结 1.总结:总结之后,效率非常好,复习的时候也才方便,也能深入到细处,非常方便建立熟悉感和突破使用困境 2.验证码使用中文集或者繁体集设置:这个 ...
- thinkphp验证码不现实多半是bom惹的祸
thinkphp 验证码不现实多半是bom惹的祸,下面是驱除bom的代码: 链接:https://pan.baidu.com/s/1v5gm7n0L7TGyejCmQrMh2g 提取码:x2p5 免费 ...
- ThInkPHP验证码不显示,解决方法汇总
出现ThInkPHP验证码不显示的情况 官方提示如下:如果无法显示验证码,请检查:① PHP是否已经安装GD库支持:② 输出之前是否有任何的输出(尤其是UTF8的BOM头信息输出):(打开验证码文件为 ...
- thinkphp验证码
thinkphp自带验证码 前端页面: <div style="position:absolute;z-index:3;top:160px;left:180px;"> ...
- Thinkphp验证码异步验证第二次及以后验证,验证错误----待解决
今天进行差错时遇到的问题.别人的回答----链接(http://www.thinkphp.cn/topic/28968.html) 3.2.3版本里的check方法会在第一次验证正确后清除SESSIO ...
- thinkphp 验证码的使用
在thinkphp中使用验证码很容易,只要调用thinkphp现有的方法就可以.当然,php的GD库肯定是要开的(就是在php.ini中要加载gd模块). thinkphp 3.2 --------- ...
- Thinkphp 验证码、文件上传
一.验证码 验证码参数 例题:登录时验证下验证码 LoginController.class.php <?php namespace Home\Controller; use Think\Con ...
- thinkphp验证码的使用
thinkphp不仅封装了验证规则 还封装了验证码 文件的位置是ThinkPHP\Library\Think\Verify.class.php 下面简单的说一下如何使用 我们现在控制器里新建一个方法 ...
随机推荐
- ON THE EVOLUTION OF MACHINE LEARNING: FROM LINEAR MODELS TO NEURAL NETWORKS
ON THE EVOLUTION OF MACHINE LEARNING: FROM LINEAR MODELS TO NEURAL NETWORKS We recently interviewed ...
- 织梦DedeCMS首页调用单页文档内容的方法
很多使用织梦dedecms单页文档功能的朋友都想知道如何在织梦首页调用单页文档的内容,下面就教大家具体的实现方法: 具体步骤如下: 首先在首页模板需要显示单页文档内容的地方插入如下代码: {dede: ...
- Spring依赖注入:注解注入总结
更多11 spring 依赖注入 注解 java 注解注入顾名思义就是通过注解来实现注入,Spring和注入相关的常见注解有Autowired.Resource.Qualifier.S ...
- centos7中systemctl命令使用方法和心得体会
使用linux的同学对service和chkconfig两个命令都不陌生,其重要性不言而喻,那么怎么会突然冒出个systemctl命令呢?其实,为了简化操作,systemctl命令将service和c ...
- java常见异常类图(分类了Error/RuntimeExecption、check Exception)
版权:欧初权 http://www.cnblogs.com/langtianya/p/4435537.html
- Javascript的调试利器:Firebug使用详解
转载自:http://blog.csdn.net/tianxiaode/archive/2007/09/02/1769152.aspx 一直在用firebug,可是没有这么精通,今天看到本文章觉得 ...
- c# 改变图片的大小(w,h)
本文介绍获取网络上的图片将其大小尺寸改成自己想要的 /// <summary> /// 图片大小裁剪 /// </summary> /// <param name=&qu ...
- XSS的DOS攻击之 server limit dos
墨西哥同学周末很郁闷的在宾馆上网,发现youtube被ban了,于是写个了tool解决这个问题.顺带想到了一种利用 google 统计的漏洞,写在这里了 http://sirdarckcat.blog ...
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
原文 http://blog.csdn.net/abcjennifer/article/details/7749309 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...
- java笔试一
JAVA相关基础知识2.String是最基本的数据类型吗?基本数据类型包括byte.int.char.long.float.double.boolean和short.java.lang.String类 ...