2016-09-15 120 views
-2

数据,这是我有一个简单脚本显示登录的用户现在(通过,如果他们在最后5分钟加载页面determinded)代码:PHP得到5至10分钟之间前

$query = mysql_query("SELECT * FROM user_actions WHERE timestamp > date_sub(now(), interval 5 minute) GROUP BY user_id"); 

我现在想为5到10分钟前登录的用户执行此操作,这可能吗?

+0

当然也兼容。 'timestamp BETWEEN date_sub(now(),间隔10分钟)和date_sub(now(),间隔5分钟)' –

回答

3

是的。使用UNIX_TIMESTAMP()获取查询执行的当前时间。所以

$query = mysql_query("SELECT * FROM user_actions WHERE timestamp > (UNIX_TIMESTAMP-300000) OR timestamp > (UNIX_TIMESTAMP-600000) GROUP BY user_id"); 

并使用转换分钟到毫秒。根据你的想法,改变或为“与”。

2

尝试BETWEEN AND为此。

SELECT * 
FROM user_actions 
WHERE timestamp BETWEEN date_sub(now(), interval 5 minute) AND date_sub(now(), interval 10 minute) 
GROUP BY user_id 
+0

即使我在8分钟前在数据库中有一行,它也会显示为0? – Shane

+0

你能张贴一些样本数据吗? –

0
require_once('DBconnection.php'); 
$con->query("SELECT required_rows FROM some_table WHERE timestamp BETWEEN date_sub(now(), interval 5 minute) AND date_sub(now(), interval 10 minute) GROUP BY id"); 

预处理语句太