0

我使用 php 为学生开发电子学习课程。当一个学生离开课程页面时,他花费了多少时间应该被记录下来。

不,我使用 javascript window.onuload 和 window.onbeforeload 调用 php 函数来使用 ajax 跟踪时间。但它不能正常工作。

页面卸载时可以从服务器端调用php函数吗?

4

4 回答 4

1

当用户在网站上时,您可能会在某个时间间隔向 PHP 页面发送心跳信号,例如每 30 秒。然后,根据收到的所有心跳计算花费的时间。

用 ajax 发送它们,并在 PHP 中汇总它们。

于 2013-10-05T12:48:53.867 回答
0

这就是谷歌分析的目的。它会跟踪您网站的访问者并向您报告统计信息,例如访问时长。他们甚至提供了一个 API来帮助您获取这些信息。

如果您不想得到任何解决方案,请参考以下链接

1) 我如何知道用户或单个 IP 地址在我的网站页面上花费了多长时间?
2)php中的页面会话,我想存储用户在特定页面上花费的时间......?
3)用户在页面上花费
的时间 4)用户在提交表单之前在网页上花费的时间

我希望这个链接和答案对你有用.. :-)

于 2013-10-05T12:56:08.707 回答
0

不会。一旦服务器将页面发送到浏览器,它就无法控制或了解页面上发生的情况。如上所述使用 JavaScript 是使其工作的唯一方法。

于 2013-10-05T12:48:13.353 回答
0

大多数站点将页面加载时间存储为会话或类似内容,然后在刷新页面或加载另一个页面时,将单独计算和存储在页面上花费的时间。

例子:

<?php
    session_start();
    if(isset($_SESSION['lasttime'])){
        $_SESSION['totaltime'] += time() - $_SESSION['lasttime']; //Add seconds onto total time
    }
    $_SESSION['lasttime'] = time();
    //...
?>

如果您的意思是检测他们何时完全离开网站,那么这是不可能的。

于 2013-10-05T12:49:22.830 回答