我在CakePHP 3应用程序中使用Database Sessions,因为我希望在网站的管理面板中显示列表在线员工(用户)。
我想检索已登录的员工(用户)s'会话信息(至少是用户ID),以便他们的详细信息可以显示在列表中。 会话表的 data 列包含会话信息,但我不知道如何从中提取特定信息。我想要它的 Auth 信息。它包含以某种方式与会话密钥连接的序列化数据。
数据样本
配置|一个:1:{S:4:"时间&#34 ;; I:1457067440;}闪光|一个:1:{S:4:" AUTH&#34 ;;一个: 1:{I:0;一个:4:{S:7:"消息&#34 ;; S:52:" Woopsie, 您无权访问它 。区域&#34 ;; S:3:"键&#34 ;; S:4:" AUTH&#34 ;; S:7:"元件&#34 ;; S:13: "闪光灯/默认&#34 ;; S:6:" PARAMS&#34 ;;一个:1:{S:5:"类&#34 ;; S:5:"错误&#34 ;;}}}} registrar_id | I:2; REGISTRAR_NAME | S:10:"高拉夫 Makhecha&#34 ;; unread_site_updates_ids | S:1:" 1&#34 ;;
任何人都可以指导我如何以最好的方式实现这一目标。
答案 0 :(得分:0)
我不知道会话数据库是否是实现该功能的最佳位置。也许你可以用别的东西......
只要大声思考,也许登录用户可以在每次请求时更新某种标志。这可以通过JS每隔X分钟完成。这样,你过滤掉了#34; old"标记并显示新标记,此时应显示活动用户。
可能有更好的方法,但我认为使用会话数据库不是最佳方式。