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

来源:爱站网时间:2017-11-18编辑:网友分享
这篇文章主要介绍了thinkPHP实现的验证码登录功能,结合实例形式分析了thinkPHP验证码登陆验证功能的相关实现技巧,需要的朋友可以参考下

本文实例讲述了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%">
	<tbody>
		<tr>
			<td colspan="2">
			<h4 style="letter-spacing:1px;font-size:16px;">RainMan 网站管理后台</h4>
			</td>
		</tr>
		<tr>
			<td>管理员:</td>
			<td><input name="user_name" type="text" value="" /></td>
		</tr>
		<tr>
			<td>密&nbsp;&nbsp;&nbsp;&nbsp;码:</td>
			<td><input name="password" type="password" value="" /></td>
		</tr>
		<tr>
			<td>验证码:</td>
			<td><input name="yanzhengma" style="width:80px;" type="text" value="" /></td>
			<td><img alt="" onclick="this.src='__URL__/verifyImg/'+Math.random()" src="__URL__/verifyImg" /></td>
		</tr>
		<tr align="center" class="bt">
			<td>&nbsp;<input type="submit" value="登陆" /></td>
			<td>&nbsp;<input type="reset" value="重填" /></td>
		</tr>
	</tbody>
</table>
</form>

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

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

上一篇:PHP用函数嵌入网站访问量计数器

下一篇:PHP实现网站访问量计数器

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载