ThinkPHP验证码使用简明教程 |
一、首先需要在控制器中加入验证码方法admin/Lib/Action/LoginAction.class.php 代码如下: 复制代码 代码如下: Public function verify(){ ob_clean(); //ob_clean函数 清空先前输出 import(ORG.Util.Image); //import调用的是message/ThinkPHP框架目录下的扩展包Extend/Library/ORG/Util/中的Image.class.php类文件 Image::buildImageVerify(); //调用buildImageVerify方法生成验证码,默认参数为($length=4, $mode=1, $type=png, $width=48, $height=22, $verifyName=verify),有兴趣的朋友可以研究下Image类 } 二、在模板文件中加入验证码模块admin/Tpl/Login/index.html 在密码输入框后加入如下代码: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="__PUBLIC__/Js/jquery-1.7.2.min.js"></script> //__PUBLIC__常量可以在页面加载后,“查看页面源文件”中找到定义的__PUBLIC__目录,默认为项目根目录message下的Public目录,下面会讲解如何自定义__PUBLIC__系统常量 //jquery文件,只有加载了这个文件才可以调用jquery的方法 <script type="text/javascript" src="__PUBLIC__/Js/login.js"></script> //这里的具体代码会在下面贴出,其实只是定义了一个change_code函数,也就是更换验证码的异步操作(可以在不刷新页面的情况下更换) <title>Message Board BackGround</title> <form action="{:U(admin.php/Login/login)}" method="post" name="back_login" > </body> login.js文件在message/Public/目录下 文件内容如下: 复制代码 代码如下: verifyURL = http://localhost/message/admin.php/Login/verify; //定义验证码路径 function change_code(obj){ $("#code").attr("src",verifyURL+/+Math.random()); //动态生成验证码方法,有兴趣的朋友可以深入研究下jq方法 return false; } 另:__PUBLIC__文件定义在message/admin/Conf/config.php 复制代码 代码如下: //常量相关配置 TMPL_PARSE_STRING => array( __PUBLIC__ => __ROOT__ . / . APP_NAME . /Public, //路径改变为message/admin/Public,刷新页面,验证码依然可以刷新,则表明js生效,也可“查看页面源文件” ), |