-5

我正在使用 php 登录脚本。(我有一个愚蠢的初学者问题)计划是在 1 小时后用 cookie 注销用户。

但是,如果用户没有按下注销按钮,则用户保持在线(在我的数据库表上,我的 MySQL 数据库上保持打开记录)当我删除该记录时,一切正常,用户可以登录。

有人可以帮帮我吗?我是否需要让他脚本删除我的会话或其他内容?

解决方案:问题是我只需要删除(确保)在用户想要再次登录之前删除用户登录数据。所以我做了一个小脚本,如果他想登录,它会为用户删除一个打开的会话。毕竟我停止使用我自己的代码。现在我正在使用 CodeIgniter,效果很好!

4

1 回答 1

2

实际上,这就是会话通常的工作方式。一旦页面被加载,浏览器和服务器之间就不再有连接了。基本上,一旦页面完成加载并且只是坐在浏览器中,就好像用户关闭了窗口一样。

没有办法 100% 可靠地检测用户是否仍然“在线”。您必须让 Javascript 为此发送一个持续的心跳,但即使这样,它也归结为timeouts。如果您已经有一段时间没有看到该用户,则假设他处于离线状态并删除该会话。这就是你所能做的。

于 2013-04-18T06:02:07.197 回答