Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP MySQL用户在过去10分钟内在线_Php_Mysql_Date_Time - Fatal编程技术网

PHP MySQL用户在过去10分钟内在线

PHP MySQL用户在过去10分钟内在线,php,mysql,date,time,Php,Mysql,Date,Time,我无法获得过去10分钟内在线的用户列表 $online = mysqli_query($db_server,"SELECT * FROM users WHERE DATE_SUB(NOW(), INTERVAL 10 MINUTE) <= user_last_login") or die("Error: ".mysqli_error($db_server)); while ($users_online = mysqli_fetch_array($online)) { $users_on =

我无法获得过去10分钟内在线的用户列表

$online = mysqli_query($db_server,"SELECT * FROM users WHERE DATE_SUB(NOW(), INTERVAL 10 MINUTE) <= user_last_login") or die("Error: ".mysqli_error($db_server));
while ($users_online = mysqli_fetch_array($online))
{
$users_on = $users_online['user_name'];
echo $users_on;     
}

$online=mysqli\u query($db\u server,“从用户中选择*WHERE DATE\u SUB(NOW(),INTERVAL 10分钟)我认为您可以直接使用MySQL DATE函数,您可以使用以下查询

SELECT * FROM users WHERE TIMESTAMPDIFF(MINUTE,user_last_login,NOW()) < 10;
从TIMESTAMPDIFF(分钟,用户上次登录,现在())小于10的用户中选择*;
有关更多参考资料,请参阅
.

我想您可以直接使用MySQL的日期函数,也可以使用下面的查询

SELECT * FROM users WHERE TIMESTAMPDIFF(MINUTE,user_last_login,NOW()) < 10;
从TIMESTAMPDIFF(分钟,用户上次登录,现在())小于10的用户中选择*;
有关更多参考资料,请参阅
.

它不显示任何用户,如果我更改=,则显示所有用户。愚蠢的问题我知道,但您有在过去10分钟内登录的用户吗?是的。日期类似于2011-06-24 02:11:06。它不显示任何用户,如果我更改=,则显示所有用户。愚蠢的问题我知道,但您有在过去10分钟内登录的用户吗?是的。Date类似于2011-06-24 02:11:06.+1,但您编写了
msqli
请更新您的代码:编辑:对不起,问题是标记mysql,但示例显示MySQLI可能是一个时区问题?(您保存为用户上次登录的日期时间的时区可能与您在查询中使用的日期时间的时区不同)我想你是对的。查询使用的日期时间是提前2小时的。+1但你写了
msqli
请更新你的代码:编辑:对不起,问题是标记mysql,但示例显示MySQLI可能是时区问题?(您保存为用户上次登录的日期时间的时区可能与您在查询中使用的日期时间的时区不同)我认为您是对的。查询使用的日期时间提前了2小时。