PHP:检查数据库中的最后一次存储时间是否大于10分钟,然后执行其他操作

PHP:检查数据库中的最后一次存储时间是否大于10分钟,然后执行其他操作,php,datetime,strtotime,Php,Datetime,Strtotime,我想检查一个设备的IP以前是否存储过,如果是的话,检查IP存储时间和现在()是否大于10分钟,然后做一些事情 如果数据库中存在IP,下面是我的PHP $ip = mysql_real_escape_string($_SERVER['REMOTE_ADDR']); $query = "SELECT * FROM messages WHERE ip = '$ip'"; $result = mysql_query($query); if (mysql_num_rows($result) > 0)

我想检查一个设备的IP以前是否存储过,如果是的话,检查IP存储时间和现在()是否大于10分钟,然后做一些事情

如果数据库中存在IP,下面是我的PHP

$ip = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
$query = "SELECT * FROM messages WHERE ip = '$ip'";
$result = mysql_query($query);
if (mysql_num_rows($result) > 0) {
  echo "IP Present.."; 
}

我在数据库中有一个名为messageTime的列,用于存储IP的存储时间。

尝试以下查询:

$query = "SELECT * FROM messages WHERE ip = '$ip' AND messageTime >= '".strtotime('-10 minutes')."'";

这将选择ip为用户ip且messageTime比现在更新的所有行-10分钟。只有当messageTime是unix时间戳时,这才有效。您可以直接在mysql中执行此操作,如下所示:

$query = "SELECT * FROM messages WHERE ip = '$ip' AND date_sub(now(), INTERVAL 10 MINUTE) = now()";