PHP登录/注销设计问题

3 php mysql

我正在考虑实施一个小型跟踪系统,该系统将跟踪用户的登录/注销时间,并跟踪当前登录的用户.除了跟踪用户何时注销之外,这对我来说都是有意义的.当用户单击"注销"按钮时,它很容易,该按钮调用可以使用注销时间更新数据库的功能,但是如果用户刚刚退出浏览器,该怎么办.我怎样才能创建一个能处理这个事件的函数,我猜想当用户以非正式的方式退出php应用程序时,我没有想到任何其他情况.此外,非常感谢有关此主题的在线教程的任何链接.

Pas*_*TIN 12

最简单的解决方案可能只是在每次对您的站点执行操作时将用户标记为"活动" (即,每次在服务器上生成页面时) - 您已经知道如何执行此操作.

如果用户长时间被标记为"活动" (例如,超过5分钟,可能更多,取决于您在网站上的内容类型),您可以认为他不再活跃 - - 实际上,甚至可能不再在你的网站上了.

当然,在检测到用户不再存在之前,您有几分钟的延迟...


一个可能的补充解决方案是每隔一两分钟使用一次Ajax请求:这样,在检测到用户不再在这里之前,你有一个较短的延迟...

但是,使用此解决方案:如果用户在您的网站上打开了浏览器窗口/标签,则认为该用户处于活动状态 - 即使他并未真正使用它(我的Firefox中总是打开很多标签,有些标签位于我的网站上)实际上并没有使用几小时/天!)