如何获得访问特定文章的当前用户的ip


How to get ip of current users who visit a particular article

我有一个名为博客的表,字段id,计数,标题,文本和我想要的To获取n个阅读最多的帖子,但是当用户阅读一篇文章时,只计算一次。如何使用IP地址解决这个问题?

您可以使用超全局变量$_SERVER,字段remote_addr包含用户IP,但这不是一种安全的计数方式。另一种方法是使用变量$_SESSION计算用户会话的数量。

参考这个线程获取IP -如何在PHP中获得客户端IP地址?

你可以添加另一个表到你的数据库,让我们说命中与post_id(外键到你的博客表)和ip_address作为列。

你可以在后面遵循这个逻辑。

  1. 获取客户端IP ($ip)和当前ID ($pid)
  2. 查询符合条件- WHERE ip_address = $ip AND post_id = $pid
  3. IF返回一行,这意味着文章已经从这个IP被查看了,所以什么都不做ELSE插入行与$ip$pid

如果你需要统计文章的点击次数,你可以在where子句中使用post_id进行计数查询。