1

可能重复:
在 PHP 中检测浏览器退出

我的服务器中有一些与用户相关的文件,我希望在用户关闭浏览器或离开我的页面时删除它们。是否可以?有什么办法吗?

4

3 回答 3

1

不仅仅是 PHP。

PHP 在服务器端运行,并且在用户有机会关闭浏览器时已经完成了对页面的处理。您可以从技术上检测 PHP 是否仍在处理页面并且用户使用特定配置关闭它。然而,这并不理想。见connection_aborted()

您需要做的是使用 JavaScript 建立一个长轮询连接,并在服务器端对其进行监控。然后,您将了解该窗口何时关闭。该连接可以与您的 PHP 脚本建立,允许 PHP 检查connection_aborted(). 请注意,您需要为此进行设置ignore_user_abort(),或相应地配置 PHP.ini。

于 2012-08-18T16:07:53.640 回答
0

您可以使用 javascript 每隔几秒对 .php 文件进行一次 ajax 调用。

于 2012-08-18T16:10:24.143 回答
0

PHP 是 *服务器* 端,因此在大多数情况下,仅使用 PHP 是不可能的。一个可能的解决方案是让 cronjob 每晚运行并删除旧文件。

于 2012-08-18T16:10:28.307 回答