另一个 PHP 脚本正在运行时,PHP 页面卡在加载中

标签 php mysql

我是网络开发的新手,正在尝试建立一个具有多个 PHP 页面和 MySQL 连接的网站。

我刚刚发现,如果我的 page1.php 正在运行,并且我尝试打开 page2.php,page2.php 会卡在加载过程中,什么也不会显示。

在 page1.php 的情况下,它需要很长时间才能完成(它遍历数据库并进行一些更新),page2.php 将只显示黑页,直到发生网关超时错误。即使我关闭 page1.php 也会发生这种情况,page1.php 上的脚本似乎一直在后台运行,直到它完成。

谁能告诉我可能是什么问题?可能是 php.ini 上的一些配置问题?

最佳答案

即 session 锁定 session 存储文件:

  1. page1.php:session_start() 锁定 session 文件。
  2. page2.php: session 文件上的 session_start() block 。
  3. page1.php:完成它的长时间处理,显式或隐式调用 session_write_close()
  4. page2.php:session_start() 解锁并可以继续

补救措施是在任何长时间事件之前调用 session_write_close()。如果需要在 page1.php 完成时将数据保存到 session 中,请再次调用 session_start()

关于另一个 PHP 脚本正在运行时,PHP 页面卡在加载中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28151982/

相关文章:

javascript - 如何将 mysql 日期转换为 var obj [新日期?

php - 显示 URL 是否与数据库字符匹配

java - 从java程序调用shell脚本并将参数从java for循环传递给shell脚本

php - 使用 fpdf 的 pdf 分页符过多

php - Type-Racer, TheWikiGame 多人游戏网站

php - 如何调用php中不存在的类方法?

mysql - 用于选择具有重复值的列的查询

php - 计算 php 中的平均评分

javascript - JavaScript 无法识别 Codeigniter 基本 URL

MySQL 1241 错误