電子書籍の厳選無料作品が豊富!

現在セション管理で開発した申込みフォーム(入力画面→確認画面→メール送信→完了画面の4ファイル)を利用しています。
入力値をセッションで管理し、完了画面でセッション破棄をしています。
ただ、困ったことに完了画面では「申込み内容を必ず控えておいてください」として入力された値を表示させていますので、リロードで値が消える今の仕様はあまり好ましくありません。なんとか解消したいのですが、セッションを破棄しない方法はセキュリティ・サーバ負荷的にも少し不安です。

セッションを使わず、値を保持する方法はないでしょうか。
もしくは、セッションを使ってもいいと思われる方がいらっしゃいましたら、理由もそえて教えていただけると大変参考になります。
よろしくお願いします。

A 回答 (2件)

ちょっと違う話になるけど


そういう申込み系は「メール」にも申込み内容(または申込み番号)をメールで自動送信というのがよく使われる手段だね。

それ以外の方法は申込みとは別の、情報維持のセッションを別で吐くか、現状仕様で通す・・・くらいしか考えられないかな・・・
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
グローバル変数やhiddenの活用なども考えてみたのですが、やはりセッションでしか保持できないのですね;

もう少し掲載を続けて、無理なようでしたらアドバイスいただいたメールでの控え情報送信、現状仕様、セッションの不破棄のどれかで検討したいと思います。
ありがとうございました。

お礼日時:2008/02/14 18:08

>セッションでしか保持できない


セッション以外でも保持する方法は有るよ。
お礼にも出ているHIDDENや「セッションではないcookie」でも可能。
だけど「なぜセッションなのか」から考えると個人情報を含めたセキュリティを実装した結果だと判断してNo1のような回答をしたって話だね。

セキュリティとかそういうのはさっぱり要りそうもないというのならcookieで保存すれば済むと思うよ。
しかし極端な話だけれど入力フォーム系ではブラウザの「戻る」「進む」「更新」は使うべきでは無いものだけれどそれは利用者には知った事じゃないからそれを封殺する手を考えるのもアリかな。

http://okwave.jp/qa727993.html
さすがにリロード禁止にはできないみたい。
    • good
    • 0
この回答へのお礼

追加でアドバイスいただきありがとうございます!お礼が遅くなってしまって本当に申し訳ありません。

SAYKAさんは利用する側のことをすごくよく理解されているのですね。
私もつい2年ほど前までは入力フォームを使う側にいたので、ブラウザの「戻る」「進む」は普通に使っていましたし、それをすることでページの期限切れのような表示が出ると「なんてちゃんとできてないホームページなんだ」と思ったほどでしたが、いざ作ると難しいものですね;

回答で教えていただいたこと、また自分で調べたこともふまえて、完了画面をPHPにするのはやめて、その人個人の専用HTMLページを臨時で作成し、画面として表示するようにしようと思います。
本当にありがとうございました。

お礼日時:2008/02/26 21:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!