ThinkPHP 5 图片验证码实现和后台验证

1. 验证码的实现

来自公共文件  common.php

/**
 * [cx_validatecode_img 生成验证码]
 * @param  string $imgparam [description]
 * @param  string $imgattrs [description]
 * @return [type]           [description]
 */
function cx_validatecode_img($imgparam='',$imgattrs='title="点击获取"'){
	$src= "/login/checkcode/".$imgparam;
	$img=<<<hello
<img src="$src" onclick="this.src='$src&time='+Math.random();" $imgattrs/>
hello;
	return $img;
}


PHP代码  来自Login控制器

/**
 * [checkcode 登陆验证码操作方法]
 * @return [type] [description]
 */
public function checkcode(){
	$captcha = new \think\captcha\Captcha();        
	$captcha->imageW=121;        
	$captcha->imageH = 32;  //图片高        
	$captcha->fontSize =14;  //字体大小        
	$captcha->length   = 4;  //字符数        
	// $captcha->fontttf = '5.ttf';  //字体        
	$captcha->expire = 30;  //有效期        
	$captcha->useNoise = false;  //不添加杂点        
	$captcha->reset = true;  //验证成功后是否重置        
	return $captcha->entry();
}

HTML 来自login.html 
<tr>
	<td>验证码:</td>
	<td>{:cx_validatecode_img()}</td>
	<td><input type="text" name="validate" placeholder="请输入验证码"></td>
</tr>

2.验证码的验证

// 验证验证码
$validatecode = 'zxu8';
if(!$validatecaptcha = captcha_check($validatecode)){
	dump('验证码失败 validatecode false');
	die;
}

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Layui是一个前端UI框架,它能够帮助我们更快速、更简单地构建美观、实用的Web界面。而ThinkPHP是一个PHP开发框架,它能够帮助我们更高效、更简洁地开发PHP应用程序。 要实现Layui和ThinkPHP6的后台登录功能,可以按照以下几个步骤进行: 1. 配置Layui的登录页面:在HTML中引入Layui的相关资源文件,包括CSS和JS,并设置一个表单,用于用户输入账号和密码等信息。 2. 创建登录接口:在ThinkPHP6的项目中创建一个用于登录验证的接口,通常是一个处理登录请求的方法。在这个方法中,需要获取用户输入的账号和密码,并与数据库中存储的账号密码进行比对。 3. 使用验证码:为了增加登录安全性,可以在登录页面中添加验证码功能。可以使用Layui的扩展组件laycode,结合后台开发语言生成验证码的图片。在提交登录请求时,需要对用户输入的验证码和生成的验证码进行比对。 4. 实现验证码刷新:当用户觉得当前验证码难以辨认时,可以提供一个刷新按钮,用户可以点击该按钮刷新验证码。刷新验证码实际上是重新生成一张验证码图片,并替换到当前验证码图片的地方。 以上就是在Layui和ThinkPHP6中实现后台登录以及验证码刷新的大致步骤。当然,具体实现还需要结合具体的代码和业务逻辑进行调整。希望这些信息能够对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值