首页 > 代码库 > thinkphp验证码实现。

thinkphp验证码实现。

作为我大天朝的程序员,如果不会点thinkphp框架确实有点说不过去了。不过不会也没关系,很简单的一个php框架。今天为大家介绍的是thinkphp如何实现验证码的功能。

thinkphp自带验证码功能,我们直接调用就行了。发展到现在thinkphp已经有好几个正式版本了,最新的版本是thinkphp5.0。今天我将给大家介绍一下5的版本和3的版本。

thinkphp3的版本:

第一步:在我们相对应的控制器创建一个输出验证码方法

public function verify()
{
    $Verify = new \Think\Controller\Verify();
    $Verify->fontSize = 20; // 字体大小
    $Verify->length = 6; // 多少个字符
    $Verify->useNoise = false; // 是否添加杂点
    $Verify->imageW = 233; // 验证码宽度
    $Verify->imageH = 50; // 验证码高度
    $Verify->entry();
}

第二步:在页面输出我们的验证码

<img src="http://www.mamicode.com/{:U(‘Admin/verify‘)}" class="verifyCode" name="admin_verify" title="点击刷新验证码">

 

完成以上的操作即可。接下来,我们开始实现附加功能。

第一个点击验证码实现刷新(其实就是使用一个ajax方法再去重新加载一次图片输出而已):在我们的js中写入如下方法。

var verifyImg = $(".verifyCode");
var verifyPath = verifyImg.attr("src");
verifyImg.click(function () {
if (verifyPath.indexOf("?")>0) {
$(this).attr("src", verifyPath+‘&random=‘+Math.random());
}else{
$(this).attr("src", verifyPath.replace(/\?.*$/,‘ ‘)+‘?‘+Math.random());
}
)}

 

第二个就是后台验证我们的验证码正确性:先创建一个公共的验证函数(公共的配置函数文件是在common下面,可定义在项目的公共目录也可在模块的功能目录),在再我们接受用户信息提交的地方做验证并将错误信息反馈给用户。

// 公共的验证函数(建议放在项目的公共目录中,便于多个模块调用)
// 公共函数在系统中可以直接使用
function
check_verify($code, $id = ""){ $verify = new \Think\Verify(); return $verify->check($code, $id); }

 

// 接收页面传入的填写的验证码值
$data[‘admin_verify‘] = I(‘post.admin_verify‘);
if (check_verify($data[‘admin_verify‘])) {
    $this->error("验证码不正确", U("login"), 3);
}

 

 

 

啊手动阀手动阀手动阀

 

thinkphp验证码实现。