求教tp3.2.3登录和退出时session的时效问题

浏览:3635 发布日期:2016/09/05 分类:求助交流 关键字: session
求教各位大神,我做的网站登录后,虽然已经将数据写入session,但前台接受后要刷新一次才能显示,退出后也是这样,应该怎么解决呢?
而且,本来需要有session的username才能登录的页面,退出后也必须要刷新一次才能真正退出,百思不得其解。。。我把session赋值为null,还是一样不行。。
控制器登录时代码:public function login(){
        if(!IS_POST    ) E('页面不存在');
        $db=D('user');
        $user=$db->where(array('username'=>I('post.username')))->find();
        
        if(!user||$user['password']!=I('post.password','','md5')){
            $this->error('账号或密码错误!');
        }
        //更新最后登录时间和IP
            $data=array(
                'id'=>$user['id'],
                'lasttime'=>time(),
                'loginip'=>get_client_ip()
            );
            $db->save($data);
            session('uid',$user['id']);
            session('username',$user['username']);
            session('logintime',date('Y-m-d H:i:s',$user['lasttime']));
            session('loginip',$user['loginip']);
            $this->redirect('Home/Index/index');
    }
控制器退出时代码:public function dologout(){
            session_unset();
            session_destroy();
            $this->redirect('User/index');
    }
前台接受session时的代码:<p>欢迎您:<{$Think.session.username}> </p>控制页面的if代码:if(!IS_POST    ) E('页面不存在');
if(!isset($_SESSION['uid'])||!isset($_SESSION['username'])){
            $this->redirect('Home/User/index');
        }
........
我的sesssion没有写入数据库,直接就在临时文件夹中的,不知道是怎么回事。
最佳答案
评论( 相关
后面还有条评论,点击查看>>