使用 php 和 mysql 自动注销

Posted

技术标签:

【中文标题】使用 php 和 mysql 自动注销【英文标题】:auto log off with php and mysql 【发布时间】:2014-02-25 08:03:17 【问题描述】:

我正在尝试为我的网页创建一个聊天室。我希望我的用户知道他们试图联系的人是否是 afk/online/offline。我环顾四周,找到了关于如何在一段时间后自动注销 php 会话的答案。那么您必须在登录时添加时间戳,检查时间是否已超过注销时间,否则您将不得不更新时间。所以对于我的聊天室,我认为我应该在他们登录到 mysql 站点时添加一个时间戳。但随后我将不得不在每一页上更新它。然后聊天室将获取所有在线用户并检查时间戳是否小于 5 分钟前。为了避免页面使用长时间加载脚本,我想在页面底部的 php 中添加此函数,每次加载页面时它都会更新数据库中的 time_stamp。

所以在我继续编写这段代码之前,我想知道这是否是一个聪明的解决方案,或者是否有更简单的方法。我知道我可以在用户身上制作一个 javascript 并检查它是否应该更改状态,但如果用户在我的页面上禁用了 javascript,这将不起作用。

那么我应该将我的聊天室用户状态设为这样还是有其他更好/更智能的解决方案?

【问题讨论】:

【参考方案1】:

这个解决方案没问题。它只是对您的数据库的一次查询。 如果查询位于“底部”,则没有什么不同,因为 php 脚本完全通过您的脚本运行,然后将内容发送给用户。

【讨论】:

【参考方案2】:

您可以使用ajax 来简化操作,或使用WebSocket 来提高性能。

【讨论】:

以上是关于使用 php 和 mysql 自动注销的主要内容,如果未能解决你的问题,请参考以下文章

将数据从mysql导入hive时用户注销和hadoop服务器自动关闭

phpmyadmin 自动注销时间

如何在 CMS PHP 中自动注销非活动用户

当用户在页面 javascript 或 php 中不活动 3 分钟时自动注销

如何防止codeigniter中的自动注销?

php和mysql中的登录,注销和持续时间?