如何刷新 PHP 页面的特定部分


how to refresh a particular part of a php page?

>我有一个php页面,显示用户提交的特定解决方案的结果。在后端检查解决方案时,页面显示图像"正在运行",当解决方案检查在后端完成时,结果将存储在数据库中。现在,由于结果存储在数据库中,显示图像"正在运行"的同一php页面应该显示从数据库中获得的图像和结果。因此,它每次都需要刷新以从数据库中获取结果。我已经为页面的这一部分使用了 iframe,并使用 SESSION 将解决方案 ID 传递给 iframe 正在使用的页面,并且该页面正在从数据库中获取数据。但问题是,由于在浏览器的另一个选项卡中提交不同的解决方案(具有不同的解决方案 ID)时刷新,因此浏览器中的上一个和当前选项卡都显示当前页面,因为解决方案 ID 是使用 SESSION 变量传递的。我也尝试了Ajax,但没有得到想要的结果。我希望浏览器上的特定选项卡仅显示在该选项卡上提交的解决方案的结果。我该怎么做,请有人帮忙。我在网上冲浪,但没有得到任何想要的结果。

基本上,你的问题是,

  • 允许在两个不同的浏览器选项卡(或窗口)中使用同一会话,因此会话 ID 在解决方案之间不是唯一的
  • 将解决方案 ID
  • 存储在会话中,因此会话 ID 在解决方案之间必须是唯一的

您可以通过删除这两个条件之一来解决问题 - 要么不允许会话重用(恕我直言,这是个坏主意),要么在 AJAX 调用中使用解决方案 ID 而不是会话 ID 进行 iFrame 刷新,例如作为 GET 参数