使用时间戳显示活跃用户?

发布于 2024-12-11 18:08:21 字数 373 浏览 0 评论 0原文

我正在开发一个非常简单的定制内容管理系统(CMS)。有一个数据库表,其中包含用户名、密码、电子邮件地址和一个日期/时间字段,显示用户上次登录的时间(更新时我在查询中使用“NOW()”)。

当用户成功登录时,脚本将更新数据库中的表并设置新时间(使用 NOW())。

现在我想显示过去 5 或 10 分钟内当前登录的用户。我不知道如何实现这一点,因此我请求您的帮助。在互联网上我读到我需要使用时间戳来执行此操作,但我不知道这是如何工作的。

  1. 我需要知道如何设置特定时间戳。

  2. 我需要知道如何在 PHP 中检查用户是否在过去 5 或 10 分钟内登录过,以便我可以在某处显示他们的姓名。

感谢您的帮助!

I am working on a quite simple custom made content management system (CMS). There is a database table containing usernames, passwords, emailaddresses and a date/time field showing when the user logged in for the last time (I used "NOW()" in the query when updating).

When an user successfully logs in, the script will update a table in the database and sets the new time (using NOW()).

Now I would like to show which users are currently logged in, in the past 5 or 10 minutes. I have no idea how to accomplish this, therefore I am calling for your help. On the internet I read I need to do this with a timestamp, but I have no idea how this works.

  1. I need to know how to set a specific timestamp.

  2. I need to know how I can check in PHP if the user has been logged in in the past 5 or 10 minutes so I can display their names somewhere.

Thanks for your help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

笙痞 2024-12-18 18:08:21

1.
为什么需要设置自定义时间戳?使用 NOW() 就可以了。

2. 此查询将查找过去 10 分钟内 latest_login 列所在的所有用户:

SELECT * FROM users WHERElatest_login >= DATE_SUB(NOW() ,间隔 10 分钟)

1.
Why do you need to set a custom timestamp? Using NOW() is all you need.

2. This query will find all users where the column latest_login is in the past 10 minutes:

SELECT * FROM users WHERE latest_login >= DATE_SUB(NOW(), INTERVAL 10 MINUTE)

记忆で 2024-12-18 18:08:21

好的,这很简单

1ts - 使用函数 mktime 将日期转换为时间戳(检查谷歌,比方说 $date)

第二 - 使用函数 time() 获取当前时间戳(比方说 $now)

第三个 if ( ($now - $date) ) > ( 5 * 60 /* 5 分钟 */ ) ) { return "未登录" }
否则返回“登录”

时间戳记以秒为单位,因此 5*60 是 5 分钟

ok this is quite simple

1ts - convert your date into timestamp using function mktime (check google , lets say $date)

2nd - use function time() to get current timestamp (let say $now)

3rd if ( ($now - $date) > ( 5 * 60 /* 5 minute */ ) ) { return "not login" }
else return "login"

timestamp counts seconds so 5*60 is 5 minutes

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文