【发布时间】:2016-11-12 02:32:34
【问题描述】:
我是 php 新手,我希望这段代码在 mysql 中完美运行,但拒绝在我的 php 代码中运行。下面是所说的mysql查询...
set @maxDate = (select MAX(login) from logs where userId=3 );
set @currentDateTime = now(); set @diff = timestampdiff(minute, @maxDate, @currentDateTime); set @duraMin = @diff DIV 60;
set @duraSec = @diff MOD 60; set @duration = concat(@duraMin,'min',' ',@duraSec,'sec');
UPDATE logs SET logout= @currentDateTime, duration=@duration WHERE userId = 3 AND login=@maxDate;
如果我能在这里得到帮助,我将不胜感激。谢谢
编辑 上面代码背后的想法是,在我的数据库中有一个名为 Logs 的表,其中包含 userID、login、logout 和 duration 列。每次用户登录时,我都会在 Logs 表中插入用户 ID 和登录日期时间,其余字段为空(注销和持续时间)。 当他注销时,会在最近登录“MAX(Login) WHERE userID = 'current_user_Id'”的表上进行更新,并插入相应的用户 ID 和注销日期时间,并计算并插入相应的持续时间。 如果有任何帮助甚至更好的想法,我将不胜感激。谢谢
【问题讨论】:
-
PHP 用在哪里?
-
感谢您的关注。我已经能够找到使用相应登录名更新注销列的方法,但剩下的就是设置自动更新同一行的持续时间列,即登录和注销差异。再次感谢