如何在php中创建访问者计数器?

时间:2012-06-02 13:31:16

标签: php mysql counter visitor-statistic visitors

我如何计算访客? 我想在打开页面时以及关闭或离开页面时插入但不是onunload 我不想在刷新页面时插入 下面的代码帮助我在打开页面时插入,但在关闭时没有帮助

session_start();
if (!isset($_SESSION["visits"]))
    $_SESSION["visits"] = 0;
if ($_SESSION["visits"] > 1){
    echo 'visit='.$_SESSION["visits"];
    echo "You hit the refresh button!";}
else{
    mysql_query(
        "INSERT INTO najd_visit( visit_userId, visit_staticId, visit_page,
            visit_enterTime)VALUES ('$userId', '$Sid', '$title', '$date') ");
    $_SESSION["visits"] = $_SESSION["visits"] + 1;
    echo 'visit='.$_SESSION["visits"];
    echo "This is my site";
}

2 个答案:

答案 0 :(得分:2)

要使用$_SESSION,您需要事先在某处调用session_start()

我认为代码应如下所示:

session_start();
if ( !isset($_SESSION['visited']) )
{
    echo "This is your first visit.";
    $_SESSION['visited'] = TRUE;

    // Do the MySQL query here
} else {
    echo "You hit the refresh button.";
}

echo "This is my site.";

这样,当新用户首次访问您的站点(使用新会话)时,他/她的访问将存储在数据库中,我们将在会话集中有一个变量,因此在刷新按钮后,信息关于访问不会再次添加到数据库。

答案 1 :(得分:0)

尝试添加session_start()来处理会话请求。

http://php.net/manual/en/function.session-start.php