我需要一些帮助。
我编写了一个模块来在我的系统中在线显示用户。我使用令牌检查用户登录系统。
在我的数据库中,表用户具有“令牌”字段。当用户登录系统时,令牌被创建并更新到数据库。相反,当用户单击注销链接时,令牌将被销毁。
但是我有一个问题,当用户关闭浏览器并且不单击注销链接时,我如何删除他们的令牌。
希望你明白这个问题。请帮忙。谢谢
问题是当用户关闭浏览器时,您不会得到通知(在 JavaScript 和 PHP 中)。但是我认为您将令牌存储在 cookie 中 - 所以我不会说“有效直到”时间,然后浏览器生成一个会话 Cookie,该会话 Cookie 在关闭浏览器后将无效。
我认为 cron 作业可能是您的问题的解决方案。对于该解决方案,您必须执行以下步骤:
添加带有令牌的日期时间字段。
在每个请求上更新该日期时间字段。
创建一个 Cron 作业,它将检查 [每 5-10 分钟] datetime 字段与当前 datetime 的时间差,如果差大于您指定的时间间隔(会话时间),则销毁令牌。