我正在学习在CodeIgniter 2.x中创建一个博客。我想要的 - 当用户点击博客页面上的链接 readmore 时,它会将其重定向到相应id
的页面,以向他显示完整的文章。
现在,在$query->row();
中从数据库中检索content_model.php
时,我想同时更新数据库中的viewed
列。因此,不是以34 views
显示他,而是显示35 views
,当有人打开相同的链接时,它会再显示一个人 - 36 views
。
最好的办法是什么,不要让它以某种方式容易受黑客攻击?
提前感谢您的帮助。
答案 0 :(得分:1)
使用CI框架从数据库检索数据时,请检查以下内容:
if ($result_from_get_function->num_rows()>0){
return $this->updateViewColoumnByOne();
}else{
return false;
}
function updateViewColoumnByOne(){
//retrieve number of view in view column, suppose 12.
//plus one with it; 12+1=13
//update it.
//again retrieve the new update number of views
//and return.
}
我认为这可以帮到你。
答案 1 :(得分:1)
这应该很容易。当有人在您检索帖子信息之前尝试阅读帖子时,请更新数据库中的计数视图。执行类似这样的查询
UPDATE `posts` SET `views` = `views` + 1;
之后,只需像平常一样检索帖子信息,然后将其输出到浏览器即可显示给用户。