人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPのheader関数について質問です。
header(”Expires: Sat, 01 Jan 2000 00:00:00 GMT”);
header(”Last-Modified: ”. gmdate(”D, d M Y H:i:s”). ” GMT”);
header(”Cache-Control: no-cache, must-revalidate”);
header(”Pragma: no-cache”);
と記述することで、そのページはキャッシュを行いませんが、ブラウザの戻るボタンでそのページに戻った場合も新規読み込みされてしまうのでしょうか。
というのも、フォームで入力するページから入力内容確認ページへ進み、ブラウザで戻った場合、MacIE5・Safariではフォームに入力した内容が表示され、WinIE6では消えてしまうので、混乱してしまっています。

●質問者: wintarsnow
●カテゴリ:ウェブ制作
✍キーワード:00 cache GMT JAN PHP
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● hebe
●50ポイント

http://www.amazon.co.jp/exec/obidos/ASIN/4844320254/hatena-22

Amazon.co.jp: まるごとPHP!〈Vol.1〉: 本: 山田 祥寛,桝形 誠二,広川 類,山本 勇,岩切 洋一

実装の方針が間違っています。

HTTP ヘッダによるキャッシュコントロールではなく、プログラム側で処理を行うべきです。

書店に並んでいる まるごと PHP (

http://www.amazon.co.jp/exec/obidos/ASIN/4844320254/phplab-22

Amazon.co.jp: まるごとPHP!〈Vol.1〉: 本: 山田 祥寛,桝形 誠二,広川 類,山本 勇,岩切 洋一

) を買ってきて PEAR::HTML_QuickForm の記事を参照してください。

補足すると HTTP ヘッダによるキャッシュコントロールは結局ブラウザ側の仕様次第となり、RFC に従っても完全に値が書き戻る事を期待する事は出来ません。

値の保持はプログラムによって処理され、保証されるべきです。

という事で書店に GO。

◎質問者からの返答

回答ありがとうございます。

つまり、ブラウザで戻った時も、ブラウザによってheader関数が効くものと効かないものがある、ということで良いのでしょうか。

セッションを使うとますますブラウザごとの動作が異なるので悩んでいました。

紹介いただいた本は、最近出版されたものなのですね。PHP5に対応というのも良いです。

本屋でチェックしてみたいと思います。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ