我使用以下代码来计算帖子的唯一网页浏览量。
$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>
代码之前的网页末尾粘贴了此代码。
答案 0 :(得分:-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
}