2012-02-24 16 views
0

私は現在、IE8が(隠された)フォームフィールドをキャッシュすることを決定し、ランダムに生成されたハッシュを書き込む問題に直面しています。フォームで送信されたハッシュがセッションに格納されたハッシュと等しい場合、フォーム要求は有効です。Internet Explorer 8がフォームデータをキャッシュしないようにする

IEはこれらの値をキャッシュするため、フォームに送信される値はセッションに格納されている値とは異なります。これを防ぐ方法を教えてください。

<input type="hidden" name="hash" value="hash inserted here" autocomplete="off" /> 

そして、このようなformタグ:

<form action="action uri" method="post" autocomplete="off"> 

答えて

2

autocompleteは何にを持っていない私は

隠し入力フィールドは次のようになります。..フィールドと<form>要素の両方でautocomplete="off"を試してみましたそれを行うと、ページ自体がブラウザにキャッシュされます。

あなたはこれを無効にするには、いくつかのヘッダーを設定することができます

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past 
0

あなたのHTMLのHEAD内でこのコードを置くことができます。

<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="Expires" CONTENT="-1"> 

またはPHPコードの火災の提案を使用しています。

関連する問題