当前位置 博文首页 > thinkPHP实现的验证码登录功能示例

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

    作者:ikesi-X 时间:2021-09-21 19:07

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

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

    <?php
      namespace Admin\Controller;
      use Think\Controller;
      use Think\Verify;
      class LoginController extends Controller{
        public function login(){
          if($_POST){
            $obj = new Verify();
            if($obj->check(I('post.yanzhengma','','trim'))){
              // 注释部分为另外一种从数据库中验证密码的方法
              // $data['name'] = I('post.user_name');
              // $data['psd'] = I('post.password');
              // $row = M('user')->where($data)->find();
              $name = I('post.user_name');
              $psd = I('post.password');
              $str = 'name ="'.$name. '" and tel = "'.$psd.'"';
              var_dump($str);
              $row = M('user')->where($str)->find();
              if($row)
                $this->redirect("Index/index");
              else
                $this->redirect('login','',1,'用户名或密码错误');
            }
            else{
              $this->redirect('login','',1,'验证码错误');
            }
          }
          $this->display();
        }
        public function verifyImg(){
          //设置验证码的宽高字体大小以及验证码的个数,设计其他的参照Think\Verify里面的设置
          $config=array(
            'imageW'  => 150,
            'imageH'  => 40,
            'fontSize' => 20,
            'length'  => 4
          );
          $obj = new \Think\Verify($config);
          $obj->entry();
        }
      }
    
    

    表单部分

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

    更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

    jsjbwy
    下一篇:没有了