2017-12-29 18:13:21 2501次浏览 2条回答 0 悬赏 10 金钱

管理员更改用户状态是在数据库中操作,而用户登录之后会话状态保存在session中,总不能用户刷新一个页面每次都要查询用户表数据库看用户的账户状态吧,各位大神有何解决方案?

最佳答案

  • 没有哆啦A梦的大雄 发布于 2017-12-29 20:44 举报

    框架本身只要登录状态每次都会查询一次user表,不然这个删除了这个用户他继续操作就会出错。
    加个字段status在基类判断一下就好了,直接从Yii::$app->user->identity->status取就不会再多一次查询了

  • 回答于 2018-01-16 16:09 举报

    很显然,解决的方法就是:删除服务端的session。

    如何删除?
    登录之后获取session_id的值,当在后台删除这个用户的时候,服务端删除这个session_id文件,当然如果使用redis就更加方便了。

您需要登录后才可以回答。登录 | 立即注册
lbmzorx
CEO

lbmzorx

注册时间:2017-10-20
最后登录:2024-01-29
在线时长:189小时41分
  • 粉丝6
  • 金钱15240
  • 威望100
  • 积分18130

热门问题