0

我创建了一个小应用程序。在该应用程序中我想存储登录和注销时间。用户正确登录但在注销时用户直接关闭浏览器。如何存储注销时间..

在我的应用程序中,如果用户单击注销按钮没有问题,我创建了一个按钮注销。但是用户直接关闭浏览器而不单击注销按钮。在这种情况下如何存储日志- 用户的超时时间。

请帮助我..

4

3 回答 3

2

如果我是对的,当用户关闭浏览器时,您将无法运行任何脚本。

您可以将时间存储到会话中:例如

$_SESSION['LAST_REQUEST_TIME'] = time() ;

每次用户更新您网站上的页面时,都会设置一个新时间。

另外,将时间保存到数据库中,因为一旦用户关闭浏览器,会话就会被破坏。

于 2013-02-18T11:49:07.987 回答
1

首先:没有可靠的方法来检测用户关闭浏览器(缺少一些始终运行的 ajax 心跳)。JavaScript 只是一点帮助,因为它不会捕获浏览器崩溃、网络连接丢失等问题。

也就是说,您可能真正想要的是登录会话中最后一个请求的时间戳——这很容易获得。您只需last_seen使用合适的会话 ID 更新每个请求的时间戳。

于 2013-02-18T11:50:55.927 回答
0

您应该将上次请求时间存储到 db 并与新请求时间进行比较,如果它大于确定的时间(例如 15 分钟),您可以要求登录。

于 2013-02-18T11:51:38.877 回答