現在セション管理で開発した申込みフォーム(入力画面→確認画面→メール送信→完了画面の4ファイル)を利用しています。
入力値をセッションで管理し、完了画面でセッション破棄をしています。
ただ、困ったことに完了画面では「申込み内容を必ず控えておいてください」として入力された値を表示させていますので、リロードで値が消える今の仕様はあまり好ましくありません。なんとか解消したいのですが、セッションを破棄しない方法はセキュリティ・サーバ負荷的にも少し不安です。
セッションを使わず、値を保持する方法はないでしょうか。
もしくは、セッションを使ってもいいと思われる方がいらっしゃいましたら、理由もそえて教えていただけると大変参考になります。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ちょっと違う話になるけど
そういう申込み系は「メール」にも申込み内容(または申込み番号)をメールで自動送信というのがよく使われる手段だね。
それ以外の方法は申込みとは別の、情報維持のセッションを別で吐くか、現状仕様で通す・・・くらいしか考えられないかな・・・
ご回答ありがとうございます。
グローバル変数やhiddenの活用なども考えてみたのですが、やはりセッションでしか保持できないのですね;
もう少し掲載を続けて、無理なようでしたらアドバイスいただいたメールでの控え情報送信、現状仕様、セッションの不破棄のどれかで検討したいと思います。
ありがとうございました。
No.2
- 回答日時:
>セッションでしか保持できない
セッション以外でも保持する方法は有るよ。
お礼にも出ているHIDDENや「セッションではないcookie」でも可能。
だけど「なぜセッションなのか」から考えると個人情報を含めたセキュリティを実装した結果だと判断してNo1のような回答をしたって話だね。
セキュリティとかそういうのはさっぱり要りそうもないというのならcookieで保存すれば済むと思うよ。
しかし極端な話だけれど入力フォーム系ではブラウザの「戻る」「進む」「更新」は使うべきでは無いものだけれどそれは利用者には知った事じゃないからそれを封殺する手を考えるのもアリかな。
http://okwave.jp/qa727993.html
さすがにリロード禁止にはできないみたい。
追加でアドバイスいただきありがとうございます!お礼が遅くなってしまって本当に申し訳ありません。
SAYKAさんは利用する側のことをすごくよく理解されているのですね。
私もつい2年ほど前までは入力フォームを使う側にいたので、ブラウザの「戻る」「進む」は普通に使っていましたし、それをすることでページの期限切れのような表示が出ると「なんてちゃんとできてないホームページなんだ」と思ったほどでしたが、いざ作ると難しいものですね;
回答で教えていただいたこと、また自分で調べたこともふまえて、完了画面をPHPにするのはやめて、その人個人の専用HTMLページを臨時で作成し、画面として表示するようにしようと思います。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- PHP 「ログイン機能を持たせる」説明が気難しいです。 2 2022/10/11 02:59
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- PHP 掲示板のセキュリティについてアドバイスお願い致します 1 2023/08/11 20:44
- Chrome(クローム) GoogleChrome閉じるたびにアンケート続行できない表示が出る。 1 2023/08/13 13:53
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- オンラインゲーム マインクラフト(java版、v1.19.2) realms に接続できません 6 2022/11/08 14:10
- その他(gooサービス) dアカウントを登録できません 1 2023/03/03 23:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
!issetの冒頭の!ビックリマー...
-
URLのパラメータをGETのままで...
-
セッション ID とセッション名...
-
PHPのセッション有効期限について
-
ログアウトする際にセッション...
-
ログイン画面をはさんだ後、自...
-
クッキーを使わないセッション...
-
セッション変数の命名規則
-
複数のサーバで運営する場合の...
-
セッション変数にパスワードを...
-
別ブラウザ間でセッションの値...
-
「取得先」という表現について
-
Dosブロンプトでtabを出力したい
-
wordの差し込み印刷で文字...
-
DTOとEntityの差は何ですか。
-
switch()文で値の大小比較
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
PHPにて自動計算した値をデータ...
-
VBS「開いているページ」のURL...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
URLのパラメータをGETのままで...
-
PHPのセッション有効期限について
-
セッション変数にパスワードを...
-
複数のサーバで運営する場合の...
-
ログインしたら他からログイン...
-
ブラウザを閉じた後もセッショ...
-
セッションを維持したまま、サ...
-
PHP SESSION変数を複数使用でき...
-
session_start()で生成されるセ...
-
HTTPヘッダー内での順番などに...
-
「ログイン機能を持たせる」説...
-
session_regenerate_id
-
Sessionの上限について
-
初歩的な質問 セッション管理に...
-
$_SESSIONと、POSTやGETの違い
-
ログイン画面をはさんだ後、自...
-
セッション変数の命名規則
-
複数ページでセッションを使わ...
-
セッション ID とセッション名...
-
セッションのスコープ(有効範...
おすすめ情報