0

我正在使用以下代码来计算我的帖子的唯一页面浏览量。

$thread_id = 4554;    // thread_id is the unique page id

$sess_key = "page_id_" . $thread_id;

if(!isset($_SESSION[$sess_key]))
{
  $_SESSION[$sess_key] = 0;
}

if($_SESSION[$sess_key]==0)
{
   $query = "UPDATE tbl_threads SET views = (views + 1) WHERE id = {$thread_id}";

   mysqli_query($connection,$query,MYSQLI_STORE_RESULT);

   $_SESSION[$sess_key] = 1;
}

但问题是,当我添加一个新帖子并单击它查看它时,它会添加,有时 3 个视图到数据库,有时 2 个视图到数据库。当我第二次打开帖子时,它会将 1 添加到数据库中。我要抓狂了,因为我在这段代码中没有看到任何错误。它也没有给我独特的页面浏览量。请分析我的代码并告诉我问题出在哪里。

注意:我已将此代码粘贴在网页末尾的</body>标记之前。

4

1 回答 1

-1

像这样试试

<?php

$thread_id = 4554;    // thread_id is the unique page id

$sess_key = "page_id_" . $thread_id;
$sessVal = $_SESSION[$sess_key];

if (!isset($sessVal)) {
    $_SESSION[$sess_key] = session_id();
    //Update the count in mysql table
} 
于 2013-09-11T05:51:08.373 回答