如何知道用户是在网站上还是离线上

Inf*_*ian 1 php mysql database

可能重复:
检查用户是否处于脱机状态

我正在建立一个社区网站.用户将通常登录和注销.我使用在线/离线属性状态来设置用户的状态.但是如果用户只是单击X按钮或者在没有注销的情况下断开连接怎么办?它显示登录状态.我如何知道用户目前是否在线?

Amb*_*ber 11

你有三个选择:

  1. 如果用户未在特定时间段(例如10分钟)内加载新页面,则可以假定用户处于脱机状态.这可以通过为服务器上的每个用户保持"最后页面加载时间"来完成.

  2. 您可以在页面上创建一个脚本,每隔一段时间触发一次AJAX调用,告诉服务器"我还在这里" - 这将使用与#1相同的逻辑,但会更可靠.

  3. 您可以使用页面卸载AJAX调用在浏览器卸载页面时告诉服务器,并将用户标记为脱机,直到他们加载另一个页面.