我正在开发一个非常简单的定制内容管理系统(CMS)。有一个数据库表包含用户名、密码、电子邮件地址和一个日期/时间字段,显示用户最后一次登录的时间(我在更新时在查询中使用了"NOW()")。
当用户成功登录时,脚本将更新数据库中的表并设置新的时间(使用NOW())。
现在我想显示哪些用户在过去5分钟或10分钟内当前登录。我不知道如何做到这一点,因此我呼吁你的帮助。在互联网上,我读到我需要用时间戳来做到这一点,但我不知道这是如何工作的。
-
我需要知道如何设置一个特定的时间戳
-
我需要知道如何在PHP检查,如果用户已登录在过去的5或10分钟,所以我可以显示他们的名字在某个地方。
谢谢你的帮助!
1.为什么需要设置自定义时间戳?你只需要使用NOW()就可以了。
2。这个查询将查找列latest_login
在过去10分钟内的所有用户:
SELECT * FROM users WHERE latest_login >= DATE_SUB(NOW(), INTERVAL 10 MINUTE)
这很简单
1ts -将你的日期转换为时间戳使用函数mktime(检查谷歌,让我们说$date)
2 -使用函数time()获取当前时间戳(比如$now)
3 if (($now - $date)> (5 * 60/* 5 minute */)){返回"not login"}否则返回"login"
时间戳计算秒数,所以5*60 = 5分钟