2016-09-15 122 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"); 

預處理語句太