IE9のメールフォームで「戻る」と入力内容が消えてしまいます


メールフォームページを作成中で、PHPの知識が無いため、下記のスプリクト利用させていただこうと設定中です。機能的には理想に近いスプリクトなのですが、IE(9)でフォームに入力し、確認画面から「戻る」ボタンをクリックすると、入力内容が消えてしまいました。
項目の多いフォームページの為、このまま進めるわけにはいかず、困っております。
何か解決方法はございませんでしょうか…。
または、無料・有料にこだわらず(できれば無料…)、オススメのメールフォームがございましたらお教えいただけませんでしょうか。

■同現象はIE9(windows7)で起こりました。IE6/7/8(IE TESTER)では起こらないようです。
 Chrome/Firefox/Safariでは問題ありません。(Mac版も)

■スプリクト配布いただいているサイト
 http://www.sapphirus.biz/php/sformmail2/

一人で困り果て、はじめて利用させていただきます。
不慣れで、情報不足かもしれませんが、何卒ご了承ください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/03/30 02:27:01
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:Cherenkov No.2

回答回数1504ベストアンサー獲得回数493

ポイント400pt

sformmail.phpの267行目あたりの

session_cache_limiter('nocache');

をコメントアウトしてみてください。
保存する際に文字コードが変わらないよう注意。デフォルトはEUC。

id:A_KWMT

ご回答有難うございます!
ご指摘いただきました方法を試してみましたら、エラー画面から戻っても、入力内容が保持されていました!

今のところ唯一の副作用っぽいのは、IE6ではエラー画面から戻れなくなり、ウィンドウを閉じ、再度メールフォームを開くと先ほどのエラー画面が表示されるという現象がありました。が、IE6なので・・・。

困っていたので、本当に助かりました!有難うございました!!

2013/03/30 02:15:56

その他の回答1件)

id:rafting No.1

回答回数2652ベストアンサー獲得回数176

ポイント100pt

ログイン画面や「入力画面」などの重要なセス保存のページの次のページ(※「確認画面など」)で
session_regenerate_id(true);を入れればいいみたいなんです。
つまり、それ以外のページでは、
session_start();
のみとしておく。
http://oshiete.goo.ne.jp/qa/7968153.html

こんな感じでは?

id:A_KWMT

ご回答ありがとうございます!
確かに、提示いただいたURLを拝見いたしますと、同様の現象だと思います。が、恥ずかしながら私には少し重いようです…。少しでもPHPを勉強してから挑戦いたします!

2013/03/30 02:21:03
id:Cherenkov No.2

回答回数1504ベストアンサー獲得回数493ここでベストアンサー

ポイント400pt

sformmail.phpの267行目あたりの

session_cache_limiter('nocache');

をコメントアウトしてみてください。
保存する際に文字コードが変わらないよう注意。デフォルトはEUC。

id:A_KWMT

ご回答有難うございます!
ご指摘いただきました方法を試してみましたら、エラー画面から戻っても、入力内容が保持されていました!

今のところ唯一の副作用っぽいのは、IE6ではエラー画面から戻れなくなり、ウィンドウを閉じ、再度メールフォームを開くと先ほどのエラー画面が表示されるという現象がありました。が、IE6なので・・・。

困っていたので、本当に助かりました!有難うございました!!

2013/03/30 02:15:56

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません