当前位置:首页 > CMS教程 > Thinkphp > 列表

thinkPHP实现的验证码登录功能示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-08-17 10:27:03 浏览: 评论:0 

这篇文章主要介绍了thinkPHP实现的验证码登录功能,结合实例形式分析了thinkPHP验证码登陆验证功能的相关实现技巧,需要的朋友可以参考下

本文实例讲述了thinkPHP实现的验证码登录功能,分享给大家供大家参考,具体如下:

使用thinkphp自带的验证,实现登录页面的账号密码+验证码的验证

  1. <?php 
  2.   namespace Admin\Controller; 
  3.   use Think\Controller; 
  4.   use Think\Verify; 
  5.   class LoginController extends Controller{ 
  6.     public function login(){ 
  7.       if($_POST){ 
  8.         $obj = new Verify(); 
  9.         if($obj->check(I('post.yanzhengma','','trim'))){ 
  10.           // 注释部分为另外一种从数据库中验证密码的方法 
  11.           // $data['name'] = I('post.user_name'); 
  12.           // $data['psd'] = I('post.password'); 
  13.           // $row = M('user')->where($data)->find(); 
  14.           $name = I('post.user_name'); 
  15.           $psd = I('post.password'); 
  16.           $str = 'name ="'.$name'" and tel = "'.$psd.'"'
  17.           var_dump($str); 
  18.           $row = M('user')->where($str)->find(); 
  19.           if($row
  20.             $this->redirect("Index/index"); 
  21.           else 
  22.             $this->redirect('login','',1,'用户名或密码错误'); 
  23.         } 
  24.         else
  25.           $this->redirect('login','',1,'验证码错误'); 
  26.         } 
  27.       } 
  28.       $this->display(); 
  29.     } 
  30.     public function verifyImg(){ 
  31.       //设置验证码的宽高字体大小以及验证码的个数,设计其他的参照Think\Verify里面的设置 
  32.       $config=array
  33.         'imageW'  => 150, 
  34.         'imageH'  => 40, 
  35.         'fontSize' => 20, 
  36.         'length'  => 4 
  37.       ); 
  38.       $obj = new \Think\Verify($config); 
  39.       $obj->entry(); 
  40.     } 
  41.   } 

表单部分

  1. <form action="login" method="post"> 
  2.   <table valign="top" width="50%"> 
  3.  <tr><td colspan="2"><h4 style="letter-spacing:1px;font-size:16px;">RainMan 网站管理后台</h4></td></tr> 
  4.  <tr><td>管理员:</td><td><input type="text" name="user_name" value="" /></td></tr> 
  5.  <tr><td>密&nbsp;&nbsp;&nbsp;&nbsp;码:</td><td><input type="password" name="password" value="" /></td></tr> 
  6.  <tr><td>验证码:</td> 
  7.    <td><input type="text" name="yanzhengma" value="" style="width:80px;"/></td> 
  8.    <td><img src="__URL__/verifyImg" onclick="this.src='__URL__/verifyImg/'+Math.random()" alt=""/></td> 
  9.  </tr> 
  10.  <tr class="bt" align="center"><td>&nbsp;<input type="submit" value="登陆" /></td><td>&nbsp;<input type="reset" value="重填" /></td></tr> 
  11.   </table> 
  12. </form>

Tags: thinkPHP验证码登录

分享到: