mysql - 查询有多少用户在线不工作
问题描述
为什么它不起作用?这显示没有错误,只是rowCounter
返回0
行。
NOW()
用函数更新表。而$user_id
is = to $_SESSION['user_id']
,更新查询工作正常:
$uptUltimaAtividade = $conn->prepare("UPDATE `users` SET last_activity = NOW() WHERE user_id = :user_id");
$uptUltimaAtividade->bindParam(':user_id', $user_id, PDO::PARAM_INT);
$uptUltimaAtividade->execute();
在屏幕上打印出在线用户数:
$query = $conn->query("SELECT * FROM users WHERE last_activity >= NOW()-600");
$rstq = $query->rowCount();
解决方案
使用间隔
SELECT * FROM users WHERE last_activity BETWEEN NOW() - INTERVAL 5 MINUTE AND NOW();
推荐阅读
- android - Android中的ObjectBox实体列表?
- legend - 如何使用 ArcGIS JavaScript 中字段的唯一值显示类别的动态图例?
- javascript - 如何在引导弹出窗口中创建许多内容
- java - java8中.distinct()和.sum()的组合
- javascript - Webpack Uncaught TypeError:无法读取未定义的属性“调用”
- powerbi - Power BI - 堆栈条形图
- python - 找不到pip已经安装的模块
- c# - ReactiveUI 同步 ReactiveCommand 调用导致 System.InvalidOperationException
- java - 需要一个找不到的“com.example.Resources.UserRepository”类型的 bean
- android - 从 firebase 数据库中检索数据:UserId 为空