我正在开发一个应该显示客户报告的系统。这些报告需要在显示实际报告之前进行先前的计算。
由于计算过程有时繁琐且冗长,有时报表使用的数据会被刷新,因此用户必须能够重新计算这些报表。由于这些原因,生成报告的脚本与实际显示报告的脚本是分开的。
简而言之,我有两个脚本,假设它们被称为“generateReport.php”和“showReport.php”。
当用户单击客户端查看其报告时,“showReport.php”会检查它需要的数据是否已经生成,如果已经生成,它将显示该报告。如果数据不存在,它将浏览器转发到“generateReport.php”,完成后,它将浏览器转发到“showReport.php”
当用户单击两个客户端并且它们都需要生成数据时,就会出现问题。
第一个点击的客户端会进入“generateReport.php”,用户会看到一个让他/她了解整个过程的栏。虽然应该生成第二个客户端的页面只是停留在那里,等待。
如果第一个客户端花费的时间太长,那么第二个客户端显然会超时并停留在那里。
我知道,由于我在同一个浏览器的两个选项卡上点击了相同的 php('generateReport.php'),apache 不会同时处理这两个请求,所以有没有办法避免第二个(可能还有第三个、第四个等)。 ) 窗口不超时?
注意:'generateReport.php' 和 'showReport.php' 有 set_time_limit(0); 只是为了测试,它显然什么都不做。
注意2:我可以在我的托管环境中访问 php.ini
注意3:对于冗长/唯一无聊的文字帖子感到抱歉
提前谢谢!
编辑1:
谢谢你的回复。
- 请求由用户单击锚标记由 HTTP GET 生成。
- header("Location: ...") 用于将用户从 generateReport 带到 showReport。
- 我指的是浏览器选项卡,是的。