逻辑记录用户在PHP中的视图

时间:2015-12-08 15:00:40

标签: php sql logging optimization record

我正在制作视频观看网站,我想记录用户视图。

我想实现一些简单的记录功能

,而不是使用第三方跟踪代码

现在我使用最基本的方式,

在视图生成之前在控制器内添加增量视图代码:

$this->Playlist_model->update_playlist_view($video_id); 

它可以工作,但不能阻止人们刷新以增加视图和对性能的伤害

记录的标准方法是什么?例如将视频ID存储在会话中,只有在不存在时才更新?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用默认值设置Cookie,例如。 firstTime=0
将到期时间设置为0,以便在浏览器关闭时到期。

为每次刷新视图增加cookie值。

仅在第一次访问时增加计数器 即当cookie值为0时

在您的控制器中

if (isset($_COOKIE['visitCounter']) and $_COOKIE['visitCounter']>=0){
    $_COOKIE['visitCounter']++; // increment the cookie value with 1 for each visit
}
else{
    setcookie("visitCounter", 0, 0); // if the cookie is not set or it's set and is 0, set it again
}

在你的模特中

if (isset($_COOKIE['visitCounter']) and $_COOKIE['visitCounter']==0){
    $this->Playlist_model->update_playlist_view($video_id);
    // do your stuff only at the first visit
}