PHP将用户返回到后台连续运行的脚本

时间:2017-02-23 17:40:30

标签: javascript php jquery ajax

我目前有一个PHP脚本在后台运行,执行一个读取大表的PHP脚本。同时它将结果发送到API。这是通过无缓冲查询完成的。

在这个脚本的顶部,我放了

ignore_user_abort(true);
set_time_limit(0);

确保脚本在后台运行,直到完成为止。我还有一个从这个脚本获取进度报告的Javascript。但是,当重新加载页面时,进度再次开始,它将开始再次将数据发送到API复制数据。

我想知道是否有办法让用户继续使用脚本。所以脚本已经在后台运行了,但是有没有办法让用户返回脚本,这样他们就好像从未离开过?

EX:

用户开始导入,导入为100行中的200行。他们刷新页面,页面显示100行中的202行。由于脚本在后台执行,因此用户离开时,202 mil导致时间已超过导入更多行。

先谢谢你

2 个答案:

答案 0 :(得分:0)

您可以在这种情况下使用websocket。当您建立与websocket的新连接时,您可以将连接存储在cookie中。然后,当您重新加载页面时,您可以重新建立与websocket服务器的连接。最重要的是,你需要一个可以从cookie变量中读取的websocket服务器。

答案 1 :(得分:0)

使用cookie可以完成吗?

每次运行时,更新所述cookie然后如果刷新页面使用cookie中的信息从它停止的地方开始并更新页面?