php - 根据 IP 地址和时间戳值重定向用户

标签 php mysql timestamp

我需要更多有关脚本的帮助。我从几个示例中拼凑出以下内容,但在比较结果以及 IP 地址和时间戳时,我的表现还不够。就目前情况而言,如果用户访问我网站上的某个区域超过 10 分钟,我会尝试将他们重定向到另一个页面。

我的 MySQL 表由以下列组成:

ID、client_ip、提交时间

这是我当前的代码:

 <?php
 $ipaddress = $_SERVER["REMOTE_ADDR"];

 $link=mysqli_connect("localhost","root","password","visitors");
// Check connection
if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

 $query = "SELECT count(`id`) AS 'count' FROM `visits` WHERE `client_ip` = '$ipaddress'
         AND 'submitted_time' = CURRENT_TIMESTAMP - INTERVAL 10 MINUTE
       LIMIT 1";
 $result = mysql_query($link, $query);

   if ($result['count'] > 0) {
   echo "You have accessed this site in the last 10 minutes -- you are blocked!";}
   else
   {
   echo "You have access";

   exit;
    }

     ?>

我应该得到“您在过去 10 分钟内访问过该网站 echo...但是我得到的是您每次都可以访问。根据我当前的代码,您对我做错了什么有什么想法吗?提前致谢!

最佳答案

如果您要检查他们是否在过去 10 分钟内访问过,您可以在之间使用

$query = "SELECT count(id) AS 'count' FROM visits WHERE client_ip = '$ipaddress' AND 'subscribed_time' 位于 CURRENT_TIMESTAMP 之间 - 间隔 10 分钟和 CURRENT_TIMESTAMP

尽管取决于您尝试执行此操作的具体细节

关于php - 根据 IP 地址和时间戳值重定向用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20156046/

相关文章:

java - 我们可以在 java 中使用 php web 服务吗?

MySQL 错误号1064 查询无需过程即可正确运行

php - 如何在 yii 查询中按列值分组?

php - 如何使数百个类似的 MySQL 查询更高效?

java - Timestamp.from 不注意 Instant 的时区

javascript - 基于 if-else 子句创建随机 UNIX 时间戳

php - 在检查元素 magento 中显示 css 文件

php - 跳过 PHPSpreadsheet 导入中的第一行

php - 通过表单获取用户输入,在 PHP 文件中进行验证,然后在另一个 PHP 文件中使用

PHP:获取年份的最后一位数字(示例:2015 == 5)