zoukankan      html  css  js  c++  java
  • 夺命雷公狗---Thinkphp----10之后台登录.注销一条龙

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

    public function Code(){
                //创建验证码类的实例
                $verify = new ThinkVerify();
                //清空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();
                //如果感觉不好看可以通过tplxThinkPHPLibraryThinkVerify.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 AdminModel;
        use ThinkModel;
        //后台管理员模型
        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>

    主要加一段代码即可:

  • 相关阅读:
    Key Figure、Exception Aggreagion、Non-Cumulative KeyFigure
    特征创建:Reference Characteristic、Template
    Compounding绑定属性
    特征的SID表、M表、P表、Q表、X表、Y表、T表
    特征的Attribute Only选项
    将InfoObject作为信息提供者Characteristic is InfoProvider
    滚动RollUp、压缩
    Aggregation 聚集
    VirtualProvider (VirtualCube)虚拟立方体
    自建数据源(RSO2)、及数据源增强
  • 原文地址:https://www.cnblogs.com/leigood/p/5404451.html
Copyright © 2011-2022 走看看