【发布时间】:2013-06-16 09:20:07
【问题描述】:
我正在保留我网站的活跃用户列表。 当用户登录时,我将它们添加到列表中。
然后我会定期(定时)调用一个 PHP 脚本,该脚本每次将服务器上的 PHP 会话过期时间延迟 10 分钟。
当用户注销时,我会将他们从活动用户列表中删除。 由于计时器停止并且过期不再延迟,PHP 会话将在 10 分钟后过期。
到目前为止一切顺利。
当用户在未注销的情况下关闭浏览器时,他们的会话仍会在 10 分钟后过期,因为时间戳不再更新。
但是这个用户仍然在我的活跃用户列表中!!
如何删除此用户?
我保留此列表是为了防止用户同时从两台计算机进入,这是客户要求。
编辑: 我确信这可以作为银行网站、票务网站等以某种方式解决这个问题。
【问题讨论】:
-
滚动您自己的会话处理程序。那么到期将完全取决于您的代码,您可以进行任何您想要的更新/清理:php.net/manual/en/session.customhandler.php
标签: php session notifications session-timeout