0

我想跟踪用户在我的网站上花费的时间。我不太担心它会降到第二个,它可以减 10-15%,这没关系,我想要更多的估计。我正在考虑在用户登录后使用会话,它将生成一个会话变量来跟踪秒数。使用$_SERVER['REQUEST_TIME'];我将能够找出他们点击上一页到本页时声明的时间之间的差异。

我遇到的问题是如果用户在网站上花费 10 分钟然后关闭浏览器会发生什么。session 变量过期后会丢失。我需要某种方法将此变量更新到数据库。每次点击页面后更新值似乎是过多的 sql 更新查询,正因为如此,我不想使用 javascript 和 ajax。

有没有办法在过期时保存会话变量?所以一旦$_SESSION['timeonline']过期就更新到数据库

4

1 回答 1

0

我怀疑你会找到任何涉及 PHP 后端的解决方案,而不是每隔几秒钟“ping”你的后端。就像你说的那样,这既糟糕又不是 100% 有效。

为什么要重新发明轮子。使用跟踪工具。PIWIK 是开源的并且易于设置。它做所有跟踪工具所做的事情,包括“在网站上花费的时间”。尽管在 10 分钟不活动后刚刚关闭浏览器的访问者可能也不会在那里被跟踪。

http://piwik.org/

于 2013-04-17T10:30:17.417 回答