我的网站上有一个页面有问题,基本上你选择了几个选项,然后将更改提交到数据库,页面刷新并显示更新的更改,但是如果我点击了在IE8顶部并按下键盘上的ENTER页面恢复到更改之前所做的????它真的让我感到困惑,但是如果我再次使用刷新按钮刷新页面,那么我所做的更改又会重新出现。
为什么会发生这种情况会有什么帮助?
我在我的网页上使用PHP和Javascript。
此致 阿利斯泰尔
答案 0 :(得分:2)
网址中是否包含变量?如果不是IE正在使用 caching 。
当您在任何现代浏览器中访问某个网站时,它将存储该网页自己的本地副本。然后,当您转到顶部的URL选项卡并再次按Enter时,浏览器会意识到它拥有自己的本地副本,并选择向您显示此内容。
这可以提高您在互联网上访问的每个页面的响应速度,但是当您刷新页面时,它会检查来自服务器的HTTP标头,如果它已经更改(它有),它将显示该页面的新版本。 / p>
您需要阻止缓存,要在PHP中执行此操作,只需添加以下内容:
// Disable caching of the current document:
header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');// Date in the past
header('Pragma: no-cache');
或者您甚至可以使用META tags。
请注意,无论您做什么,这些只是浏览器可以随意忽略的请求。您无法控制客户端的浏览器,尽管大多数人都会遵守。