我使用了一些脚本,但它们在页面刷新时破坏了会话(F5或CTRL + R或浏览器刷新按钮)。
我只需要检查浏览器关闭按钮或ALT + F4 ..
简而言之,当用户完全关闭浏览器或关闭所有标签时,使用AJAX调用php函数。
答案 0 :(得分:4)
用户关闭浏览器后,应立即自动丢弃会话。除非有某种“记住我”功能。
答案 1 :(得分:1)
无法保证您的服务器可以知道用户已关闭浏览器 - 请勿尝试实现此目的。
当用户关闭浏览器时,会话将自动丢失,因为浏览器不会保留用于将自身与生成的PHP会话关联的cookie。但同样,这不是必然保证的。你可能需要问一个不同的问题。
答案 2 :(得分:1)
PHP Session工作就是这样:
它为每个实例存储静态变量类型的数组,并通过将哈希值存储为名为 PHPSESSID 的Cookie来标识会话变量。
Cookie生命周期是在浏览器打开时,浏览器关闭时Cookie被丢弃。
某些浏览器可以存储Cookie Forever,但Session在服务器端有超时。
你可以在Browser Close上运行一个函数的情况是不可能的,因为Browser Kill在Exit上都运行了JavaScript。
答案 3 :(得分:0)
当浏览器关闭时,会话会自动销毁,你还想做什么?