十三郎的IT生活

 

警告: 网页已经过期!

我想大家也一定经常遇到这种情况的发生!所以专门去网上找了这篇文章!我也加了些信息!(*^_^*)
转自:http://www.phpe.net/faq/73.shtml
问:为什么我在点击浏览器的后退按钮后,所有字段的信息都被清空了?

答:这是由于你在你的表单提交页面中使用了 session_start 函数。

//以下是我个人理解!
因为我们后退浏览的是缓存页,而该函数会强制当前页面不被缓存。所以出现了'警告: 网页已经过期!'.
这些信息,而我们不得不刷新下才能正确显示,对于一个程序人员来说有可能无所谓,但是对于一个internet网上的一个顾客来说,看到该页面,他有可能关闭该页面,而不会去查看这些信息!
还有一个原因就是当一个网站流量比较大的时候,缓存是我们程序人员最好的工具,如果失去了这把工具,那么你所在的虚拟服务器必将受到考验!

解决办法为,在你的 Session_start 函数后加入 header("Cache-control: private"); 注意在本行之前你的PHP程序不能有任何输出。

还有基于session的解决方法,在session_start前加上
session_cache_limiter('nocache');// 清空表单
session_cache_limiter('private'); //不清空表单,只在session生效期间
session_cache_limiter('public'); //不清空表单,如同没使用session一般

我想大家也一定经常遇到这种情况的发生!所以专门去网上找了这篇文章!
转自:
问:为什么我在点击浏览器的后退按钮后,所有字段的信息都被清空了?

答:这是由于你在你的表单提交页面中使用了 session_start 函数。该函数会强制当前页面不被缓存。解决办法为,在你的 Session_start 函数后加入 header("Cache-control: private"); 注意在本行之前你的PHP程序不能有任何输出。

还有基于session的解决方法,在session_start前加上
session_cache_limiter('nocache');// 清空表单
session_cache_limiter('private'); //不清空表单,只在session生效期间
session_cache_limiter('public'); //不清空表单,如同没使用session一般



转自:http://edu.codepub.com/2009/0617/6477.php

posted on 2009-07-22 15:58 十三郎 阅读(447) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。

导航

常用链接

留言簿(5)

随笔分类

文章分类

积分与排名