关于session

关于session

登录成功保存session

public function inputlogin()
{
    //检测是否是post提交
    if (!request()->isPost()) {
        $this->error('请求错误');
    }
    //获取表单数据
    $data = input('post.');
    //dump($data);exit;
    //判断用户名 密码是否正确
    $ret = model('User')->get(['username' => $data['username']]);
    if (!$ret) {
        $this->error('用户名错误');
    }
    if ($ret->password != md5($data['password'])) {
        $this->error('密码错误');
    }
    //登录成功保存session值
    session('user', $ret, 'bbs');
    return $this->success('登录成功', url('index/index'));


}

退出页面清除session

//退出登录
public function logout()
{

    //清楚session  第一个参数传null 第二个参数传作用域
    session('bbs', null);
    //跳出 到登录页面
    return $this->redirect(url('index/login'));

}

我清除了session  在index下 需要加什么方法   刷新首页  判断没有session值  返回登录页

这个逻辑  怎么写  不是很懂    

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
guly 2019-11-29 17:59:52

你好,通过session获取登录信息判断是否登录,参考如下代码

public function index()
{
    $topic = new TopicModel();
    $topics = $topic->getTopics();
    $this->assign('topics',$topics);
    $user = session('user');//通过session获取登录信息判断是否登录
    if($user){
        return $this->fetch("",['user' =>session('user')]);
    }else{
        $this->success('请先登录','index/login');
    }

}

如果解决您的问题请采纳,祝学习愉快!

guly 2019-11-29 15:37:27

你好,可以使用框架封装的sucess函数参考代码如下:

public function logout() {
    session('user', null);
    $this->assign('user',session('user'));
    $this->success('退出成功!','index/index');
}

如果解决您的问题请采纳,祝学习愉快!

  • 提问者 昵称加载中__ #1
    不是 我的意思 我退出了 我再登录首页 在首页判断 session 的逻辑怎么写, 在首页判断 如果session 有值 就是在这页 如果session 没值 就跳转到 登录页面 ,我的意思是这样
    2019-11-29 15:51:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师