【发布时间】:2011-02-26 03:33:11
【问题描述】:
当显示来自 DB 的数据时我通常会遇到这种情况
- 我在显示来自 DB 的数据的 A.php 页面中,
- 用户执行一些操作(如编辑/删除等)并加载页面 B.php 以执行该操作,
- 一旦页面 B 执行操作,它将浏览器重定向到页面 A,
- 页面 A 在步骤 (3) 期间自动重新加载,因此它显示了数据的更新情况
为了使页面 B 重定向到页面 A,我使用了一个简单的 PHP
header("Location: " . "A.php", TRUE, 302);
这适用于所有情况,除了页面 A.php 显示为 <iframe> 时:在这种情况下它不会重新加载(第 4 步没有完成)。
这似乎只发生在 IE7 中(不知道 IE8),它在 FF/Safari 上完美运行。
只有在使用<iframe> 时,如果页面 A.php 不在<iframe> 中,它也会在 IE7 中刷新。
为了解决这个问题,我只是在页面 A.php 中添加了几个标题以将其设置为不被缓存:
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
但我很好奇您过去是否也遇到过同样的问题,您能否就此给我一些建议?
【问题讨论】:
标签: php internet-explorer iframe header reload