Php 添加的数据仅在重新启动Internet Explorer后显示

Php 添加的数据仅在重新启动Internet Explorer后显示,php,mysql,internet-explorer,browser-cache,Php,Mysql,Internet Explorer,Browser Cache,我用一些简单的MySQL数据库活动制作了一个php程序。这一切在Chrome和Firefox中都很好,但在IE浏览器中却有一些令人讨厌的地方。在添加和检索时,我可以在Chrome和Firefox中看到所有添加的数据,但在IE中它不会显示出来。当我再次关闭并重新启动IE时,会显示最后添加的数据。在我看来,这是一个缓存(刷新?)问题,因此添加了以下CLECH缓存代码: <?php header("Expires: Tue, 01 Jan 2000 00:00:00 GMT"); header(

我用一些简单的MySQL数据库活动制作了一个php程序。这一切在Chrome和Firefox中都很好,但在IE浏览器中却有一些令人讨厌的地方。在添加和检索时,我可以在Chrome和Firefox中看到所有添加的数据,但在IE中它不会显示出来。当我再次关闭并重新启动IE时,会显示最后添加的数据。在我看来,这是一个缓存(刷新?)问题,因此添加了以下CLECH缓存代码:

<?php
header("Expires: Tue, 01 Jan 2000 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>


但这不起作用。我正在使用Internet Explorer 11,希望有人能帮我解决这个恼人的问题

问题是你的网站没有为缓存的资源指定一个新鲜生命周期,迫使IE使用启发式;看到和

如果正确指定了缓存头,则缓存头将正常工作。您应该发送杂注也不预检查后检查

您的标题应如下所示:

Expires: Tue, 01 Jan 2000 00:00:00 GMT
Cache-Control: no-cache, no-store, max-age=0

这将防止IE在后退/前进导航(根据设计,后退/前进导航会忽略服务器的缓存指令)之外的任何地方重用缓存响应

我自己发现的。事实证明这是一个AJAX问题,添加一个随机值可以解决这个问题。好吧,这是一个有点黑客,但它的工作。有关更多信息: