Thursday, April 14, 2011

[PHP] [轉貼] 為什麼我在點擊瀏覽器的後退按鈕後,所有字段的信息都被清空了?

問:為什麼我在點擊瀏覽器的後退按鈕後,所有字段的信息都被清空了?


答:這是由於你在你的表單提交頁面中使用了 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一般

可以在session_start();前加上 session_cache_limiter("private,max-age=10800");

摘自phpe.net

No comments:

Post a Comment