我正在制作视频观看网站,我想记录用户视图。
我想实现一些简单的记录功能
,而不是使用第三方跟踪代码现在我使用最基本的方式,
在视图生成之前在控制器内添加增量视图代码:
$this->Playlist_model->update_playlist_view($video_id);
它可以工作,但不能阻止人们刷新以增加视图和对性能的伤害
记录的标准方法是什么?例如将视频ID存储在会话中,只有在不存在时才更新?
感谢您的帮助。
答案 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
}