Home  >  Article  >  Backend Development  >  上面这段PHP后台登陆代码实现免登陆

上面这段PHP后台登陆代码实现免登陆

WBOY
WBOYOriginal
2016-06-13 13:08:481246browse

下面这段PHP后台登陆代码实现免登陆
如果后台管理员帐号为admin,密码为123456请问下面这段代码如何实现免登陆,麻烦知道的大哥直接给代码谢谢了


PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php class LoginAction extends BaseAction{
    //默认操作
    public function index(){
        if ($_SESSION[C('USER_AUTH_KEY')]){
            redirect("index.php?s=Admin-Index");
        }    
        $this->display(APP_PATH.'/Public/admin/login.html');
    }
    
    //生成验证码
    public function vcode(){
        import("ORG.Util.Image");
        Image::buildImageVerify();//6,0,'png',1,20,'verify'
    }
    
    //登录检测
    public function check(){
        if(empty($_POST['user_name'])){$this->error('帐号必须!');}
        if(empty($_POST['user_pwd'])){$this->error('密码必须!');}
        if(function_exists('gd_info')){
            if(empty($_POST['verify'])){$this->error('验证码必须!');}
            if($_SESSION['verify']!=md5($_POST['verify'])){$this->error('验证码错误!');}
        }
        //生成认证条件
        $map=array();
        //支持使用绑定帐号登录
        $map['admin_name']=$_POST['user_name'];
        //$map["user_status"]=array('gt',0);//状态
        $rs=D("Admin.Admin");
        $authInfo=$rs->where($map)->find();
        //使用用户名、密码和状态的方式进行认证
        if(false === $authInfo) {
            $this->error('帐号不存在或已禁用!');
        }else {
            if($authInfo['admin_pwd']!=md5($_POST['user_pwd'])){
                $this->error('密码错误!');
            }
            // 缓存访问权限
            $_SESSION[C('USER_AUTH_KEY')]=$authInfo['admin_id'];
            $_SESSION['admin_ok']=$authInfo['admin_ok'];
            $_SESSION['admin_name']=$authInfo['admin_name'];            
            //$_SESSION['email']=$authInfo['admin_email'];
            //$_SESSION['lastLoginTime']=$authInfo['admin_logintime'];
            //$_SESSION['login_count']=$authInfo['admin_count'];
            //if($authInfo['user_name']=='admin') {
                //$_SESSION['administrator']        =    true;
            //}    
            //保存登录信息
            $ip=get_client_ip();
            $data=array();
            $data['admin_id']=$authInfo['admin_id'];
            $data['admin_logintime']=time();
            $data['admin_count']=array('exp','admin_count+1');
            $data['admin_ip']=get_client_ip();
            $rs->save($data);
            redirect('index.php?s=Admin-Index');                    
        }
    }    
    
    // 用户登出
    public function logout(){
        if(isset($_SESSION[C('USER_AUTH_KEY')])) {
            unset($_SESSION[C('USER_AUTH_KEY')]);
            unset($_SESSION);
            session_destroy();
            $this->assign('jumpUrl','index.php?s=Admin-Login');
            $this->success('登出成功!');
        }else {
            $this->error('已经登出!');
        }
    }        
}
?>


------解决方案--------------------
改写 index 方法为
PHP code
    public function index(){
        if ($_SESSION[C('USER_AUTH_KEY')]){
            redirect("index.php?s=Admin-Index");
        }
        //$this->display(APP_PATH.'/Public/admin/login.html');
    
        $_POST['user_name'] = 'admin';
        $_POST['user_pwd'] = '123456';
        $_POST['verify'] = 1;
        $_SESSION['verify'] = md5($_POST['verify']);
        $this->check();
   } <div class="clear">
                 
              
              
        
            </div>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn