Heim > Backend-Entwicklung > PHP-Tutorial > 上面这段PHP后台登陆代码实现免登陆

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

WBOY
Freigeben: 2016-06-13 13:08:48
Original
1296 Leute haben es durchsucht

下面这段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('已经登出!');
        }
    }        
}
?>
Nach dem Login kopieren


------解决方案--------------------
改写 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>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage