夺命雷公狗---Thinkphp----10之后台登录.注销一条龙

首先我们还是还是写一个控制器名字叫LoginController.class.php的控制器,首先来写一个code的方法来让验证码先显示出来:

 

 

public function Code(){
            //创建验证码类的实例
            $verify = new \Think\Verify();
            //清空ob缓存
            ob_clean();
            //设置初始化验证码
            $verify -> codeSet = "0123456789";
            $verify -> length = "4";
            $verify -> fontSize = "30px";
            $verify -> fonttf = "4.ttf";
            $verify -> useCurve = false;
            $verify -> useNoise = false;
            
            //显示验证码,并且保存在session中
            $verify -> entry();
            //如果感觉不好看可以通过tplx\ThinkPHP\Library\Think\Verify.class.php里面进行设置
        }

 

让后在到登录页面里修改下让验证码可以正常跑起来再说:

 

让后再写多一段js代码,让验证码可以在点击时候可以变换,

 

 

<div class="login">
    <h1>Login</h1>
    <form method="post" action=""__URL__/Login/" >
        <input type="text" name="username" placeholder="用户名" required="required" />
        <input type="password" name="password" placeholder="密码" required="required" />
        <input type="text" name="captcha" placeholder="验证码" required="required" />
        <img id="code" src="__CONTROLLER__/Code" width="145" height="50" alt="CAPTCHA" border="1" onclick= this.src="index.php?act=captcha&"+Math.random() style="cursor: pointer;" title="看不清?点击更换另一个验证码。" />
        <button type="submit" class="btn btn-primary btn-block btn-large">登录</button>
    </form>
</div>
<div style="text-align:center;">

</div>

<script>
  window.onload = function(){
    document.getElementById("code").onclick = function(){
      this.src = "__URL__/code/_/"+new Date().getTime();
    }
  }
</script>
</body>

 

然后再来写一个控制器让他对提交过来的数据进行验证:

 

这里使用了大D,所以要在Model里面进行验证帐号和密码

 

<?php
    namespace Admin\Model;
    use Think\Model;
    //后台管理员模型
    class UserModel extends Model{
        //验证用户名和密码
        function checkUser($username,$password){
            $condition['username'] = $username; //数据库设计的时候这里是username
            $condition['password'] = md5($password);  //数据库设计的时候这里是password
            if($admin=$this->where($condition)->find()){
                //成功,保存session,并且跳转到首页
                session('admin',$admin);
                return true;
            }else{
                return false;
            }
        }
    }

 

让后我们即可成功通过先验证验证码,在验证帐号和密码来进行登录了,,下一步就是退出登录了,这个也很简单,

//注销
        public function logout(){
            session(null);
            $this -> success('恭喜成功退出','Login/login',3);
        }

 

让后在后台模型下修改下链接即可,如下所示:

 

 

<a href="__MODULE__/Login/logout" target="topFrame" onFocus="this.blur()" class="admin-out">注销</a>

 

 

主要加一段代码即可:

posted @ 2016-04-18 14:50  夺命雷公狗  阅读(461)  评论(0编辑  收藏  举报