php - 如何从浏览器检测用户是空闲还是非活动

时间:2018-02-14 14:43:48

标签: php

我发现这个脚本作为“TimeOut”运行。 脚本工作正常,但在此之前,我想要一个PHP脚本来检查用户是否从浏览器中处于非活动状态..

有机会使用php吗?

if ($_SESSION['timeleft'] + 10 * 60 < time()) {
    echo '<script> window.location = "?logout";</script>';
} 

1 个答案:

答案 0 :(得分:0)

PHP并非真正为此而构建,您可以使用JavaScript并对PHP页面进行AJAX调用,以便通过用户活动更新它。

一种可接受的方式来执行您显然尝试的操作(使用在X秒不活动后将人员记录下来的动态会话),即在每次调用服务器时发送此类更新。如果您的站点是同步的(即不是单页应用程序),您可以期望用户导航到不同的页面,因此该代码可以位于页眉中。

如果你有一个单页的应用程序,或者希望用户长时间呆在同一页面上(现在很常见),你可以每隔X秒发送一次更新服务器的AJAX请求。

例如,WordPress采用这两种方法。