Php 页面刷新时如何防止更新mysql字段+1

Php 页面刷新时如何防止更新mysql字段+1,php,mysql,codeigniter,page-refresh,Php,Mysql,Codeigniter,Page Refresh,我想创建一个边栏,显示按点击排序的前5篇文章。我用的是Codeigniter。我编写了简单的查询代码。 在视图中,我有一个简单的链接: <a href="<?php echo base_url() ?>/article/<?php echo $row['article'];?>"><h2><?php echo $row['particle'];?></h2></a> 我的控制器: public functio

我想创建一个边栏,显示按点击排序的前5篇文章。我用的是Codeigniter。我编写了简单的查询代码。 在视图中,我有一个简单的链接:

 <a href="<?php echo base_url() ?>/article/<?php echo $row['article'];?>"><h2><?php echo $row['particle'];?></h2></a>
我的控制器:

public function article($article_id) {
       $link = $this->quotes_model->get_article($article_id);
       $this->quotes_model->count_views($article_id);
       $views = $this->quotes_model->popular_articles();
       $this->template->set('views', $views);
       $this->template->render();
}
当我在mysql field views updates+1中按article title link时,它会打开一篇完整的文章。一切都很好,但如果我按“刷新”,field View将再次更新+1

如果有人刷新了一篇打开的文章,mysql不应该再更新视图字段+1?
对不起,我说的是英语

您应该使用系统Ip或浏览器会话id来控制它,以获得唯一的页面点击

使用


获取ip地址的变量。

在表文章中添加两个字段:

现在,当用户第一次打开文章时,它会与日期和时间一起被记录下来

如果他/她刷新页面,请检查数据库中的,如果不存在,请插入


如果您希望每个用户只访问一次,请不要检查日期,否则请检查日期。

当用户尝试刷新页面时,可能有更简单的方法使用javascript或ajax以某种方式停止更新字段?您无法控制用户刷新页面。它必须在代码级别处理,以防您只想捕获用户的唯一访问。因此,我必须添加ip地址和访问日期字段。当用户打开一篇文章时,我应该在db中插入他的ip和访问日期。我不明白我在检查他是否会刷新页面:ip?还有一个问题?若用户将按下后退按钮并再次按下文章链接,它将添加+1?我只是个乞丐,所以我必须理解一切。谢谢你的帮助。
public function article($article_id) {
       $link = $this->quotes_model->get_article($article_id);
       $this->quotes_model->count_views($article_id);
       $views = $this->quotes_model->popular_articles();
       $this->template->set('views', $views);
       $this->template->render();
}
      session_id();
      $_SERVER
ip_address -> ip address of the user.

visited_date -> date time