応募フォームの入力途中内容を保持する方法

このQ&Aのポイント
  • JavascriptとCGIを利用して応募フォームを作成中です。入力途中の内容を保持し、ブラウザの【進む】ボタンなどで再度表示させた時、前の入力内容が表示される方法を知りたい。
  • <form action="aaa.cgi">のsubmitやブラウザの【戻る】や【進む】を利用する方法が考えられます。どの方法でも良いです。また、【送信】ボタンで入力した値を【戻る】の時にも利用したいです。
  • 質問者は、応募フォームの作成中で、入力途中の内容を保持し、ブラウザの【進む】ボタンなどを利用した時に、前の入力内容が表示されるようにしたいと述べています。ほかの質問や考えた方法でも解決できず、質問者はサンプルコードがあれば助かると言っています。
回答を見る
  • ベストアンサー

フォーム内の操作で・・・

JavascriptとCGIを利用しています。応募フォームを作成し、氏名等を入力してもらい、送信できるページを作成中です。例えば応募フォームを入力中に前のページを確認できるようにしたいのですが、その時に入力途中の内容を保持し、ブラウザの【進む】ボタンか何かで応募フォームを再度表示させた時、前の入力内容が表示上残るようにしたいと思っています。過去の質問で似たようなものがあり、いろいろ考えてみたのですが解決出来ませんでしたのでお願い致します。 (1)ブラウザの【戻る】や【進む】を利用する場合の方法 (2)<form action="aaa.cgi">のsubmit等でやり取りする方法 どんな方法でも良いです。 (2)の方法の場合【送信】ボタンがフォーム内にあり、<input type="txt">で入力した値を【送信】の時と【戻る】の両方で利用したい。 出来れば簡単なもので結構ですのでコードのサンプルがあるとうれしいです。お願い致しますM(V_V)M

  • HTML
  • 回答数3
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • masaboo
  • ベストアンサー率58% (7/12)
回答No.1

■入力画面 if(btnBackがある、もしくはbtn****がパラメータにない){   <form action="aaa.cgi" method="post">   <input type="text" name="onamae" value="$X{onamae}">   <input type="text" name="gojusho" value="$X{gojusho}">   <input type="submit" name="btnNext" value="次へ">   </form> } ■確認画面 if(btnNextがある){   <form action="aaa.cgi" method="post">   <input type="text" name="onamae" value="$X{onamae}" readonly>   <input type="text" name="gojusho" value="$X{gojusho}" readonly>   <input type="submit" name="btnBack" value="戻る">   <input type="submit" name="btnEnd" value="完了">   </form> } ■完了画面 if(btnEndがある){   <p>どうもありがとうございましたー。</p> } ------------------------------------------------------------------------ 状況がよくわかりませんが、こんな感じで、aaa.cgi内部で処理を切り替えれば できるかと思います(もちろん、そのままでは動かないっすよ)。 %Xには、あらかじめパラメータを取得しておきます。 readonlyは、ブラウザによってはダメだったりするので、対象によっては 文字列はそのまま表示し、データはhiddenで保持すればいいでしょう。

simple-t
質問者

補足

ご返答ありがとうございますM(v_v)M 【戻る】を押した時と、【進む】を押したときでaaa.cgiの処理を変えると言う解釈でよろしかったでしょうか??私の説明が足りなくてすいません。少し補足させて頂きます。状況としては、入力画面の方に【戻る】ボタンがあり、aaa.cgiの画面に【進む】ボタンがあります。お互いの画面を行き来する際に入力画面の内容を保持したいと思います。おそらくその場合でもお答え頂いた考え方で対処できると思うのですが、もしブラウザの【戻る】を利用した時にも内容が保持できる方法があればご教授願います。

その他の回答 (2)

  • masaboo
  • ベストアンサー率58% (7/12)
回答No.3

んで、ブラウザの【戻る】を利用すると、入力内容が 消えてしまうのですか? 消える場合は、全てが消えるのですか? あと、ブラウザは何の6.0でしょうか。

simple-t
質問者

補足

すいませんM(vv!)M IEの6.0です。応募フォームの画面はCGIで生成されたページです。フォーム内のテキストボックスに入力をしていくのですが、途中で【戻る】をして再度【進む】をした場合、その都度問合せに行くのでページを更新します。そのため内容は随時消える事になります。

  • masaboo
  • ベストアンサー率58% (7/12)
回答No.2

>もしブラウザの【戻る】を利用した時にも内容が保持できる方法があればご教授願います。 対象ブラウザ・バージョンは何でしょうか? 現在、ブラウザの【戻る】を利用すると、入力内容が 消えてしまうのですか?【戻る】は大抵の場合、入力内容が保持されていると思います。 念のため、<input type="file">の場合は、どんなブラウザでも、入力内容はセキュリティ上消える仕様なはずです。

simple-t
質問者

補足

バージョンは6.0です。<input type="text">を利用しています。

関連するQ&A

  • フォームメールでsendmailの使えない場合の代替え

    これからCGIでフォームメールを作成しようとしていますが、アップしようと思っているサーバがsendmailが使えないそうです。 やりたいことは、応募フォームにて氏名、住所などを入力してもらい、送信ボタンを押した後、確認画面を表示させ内容確認、OKボタンでこちらにメール送信されるということをやりたいのですが。 sendmailが使えない場合、どのようにしたらいいのでしょうか。他に方法があるようですが、どなたか教えて下さい。

    • ベストアンサー
    • CGI
  • フォームメールでの通し番号

    CGIでフォームメールを作成しています。 フォームから入力された情報はサーバに残さずに、管理人のメールに送る仕組みです。サーバに情報は残さないのですが、管理人が受信したメールの件名に、通し番号を追加したいと思っています。 確認用のページの「送信する」ボタンをクリックして、カウントさせたらいいのかもしれませんが、書き方がよくわかりません。 カウントCGIを利用すればよい、というのはよく見かけるのですが、カウントだと、ページが表示されたときにカウントされていってしまうと思うのですが、送信のクリックボタンを押して、というようにするには、具体的にどのように記入すればいいのかがわかりません。 漠然とした内容で申し訳ありませんが、よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • フォームの構築

    phpで以下のような流れのフォームをつくっています。 基盤となる流れで問合せでも会員登録でもフォームの流れは共通です。 1:入力ページ 2:確認ページ 3:送信完了ページ ※入力ページと確認ページでは、自分自身にPOSTしてます 入力ページで送信ボタンを押すとデータチェック(未入力や妥当性)を行います。 ここでエラーがあればエラーメッセージを各フォームの項目の下に表示しページ移管しません。 エラーがない場合にはPOST値をSESSIONに格納し確認ページへリダイレクトします。 ※確認ページの各項目の表示値はSESSION値を利用 確認ページのボタンは送信ボタンのみで戻るボタンは用意していません。必要であればブラウザの戻るで戻ります。 送信ボタンを押すと送信完了ページへリダイレクトしメール送信等の必要な処理を行います。 いちいちSESSIONを利用しないでPOSTで済ませるべきという意見もあるのですが一般的にどちらがいいのでしょうか? 確かにSESSIONを利用しない場合、処理は楽になる事もあるのですがPOSTした瞬間に ページ移管してしまうので各フォームの下にエラーメッセージの表示はできないですよね? また、hiddenを使う事によって目には見えないもののソース上では見れるので セキュリティ的にもあまりよくないという事もあるのでどちらがいいものか迷っております。 問題なく動作はしているので構築方法についてアドバイスやいい方法がありましたら教えてください!

    • ベストアンサー
    • PHP
  • CGI メールフォームについて

    CGI初心者です。 メールフォームの項目を作った後、送信ボタンをクリックしてもブラウザが表示されない状態でした。送信ボタンをクリックしたときに表示されるファイルも作成しなければならないのでしょうか?CGIで使用できるようにするには、どのような設定をすればよろしいのでしょうか? 分かりやすく説明して頂けるとありがたいです。 よろしくお願いします。 

    • 締切済み
    • CGI
  • 「戻る」操作後のフォームの内容について

    ブラウザのフォームに登録情報などを入力している途中で、誤って別のページに移動してしまった場合、「戻る」ボタンを押して入力ページに戻ると、入力していた内容が残っている場合と、消えてしまっている場合がありますが、これはなぜなのでしょうか?

  • フォームと直リンについて

    初心者です。また、基本的にページをDREAMWEAVERで作成しているので、トンチンカンなことを言っているかもしれませんが、困っているのでどなたか教えて下さい。 私は音楽配信のページを作りたくて、作業しているのですが、ユーザーが曲をダウンロードする前に、必ずフォームを通るようにしようとしています。そこで、フォームのページで送信を押すと、すぐにダウンロードが始まるようにしたいのですが、送信ボタンを押すとすぐにダウンロードが始まるというようなことは技術的に可能なのでしょうか?不可能なのであれば、それにかわるいいシステムはどのようにできるのでしょうか? また、そのフォームの送信を押した後にダウンロードできる曲への直リンクを防ぐ方法はhtaccessファイルでできるのでしょうか?フォームの内容はCGIで受け取りたいと今のところ考えています。根本的にCGIでうけとるときに、フォームの送信ボタンを押したあとに表示される画面の設定の仕方等を理解していないので、頭が混乱しています。 かなり抽象的な質問になってしまいましたが、どなたか救いの手をよろしくお願いします。

  • HTTPでフォームを送信したい

    JavaScriptで書かれた認証文字数チェックがある ユーザIDやパスなどの入力フォームを 本来サブミットで送信する内容を HTTPでPOSTまたはGETして、直接cgiにフォーム内容を 送信したいのですがその様なことは可能でしょうか? 可能でしたら方法やその理屈を教えていただけません でしょうか? 理由 通常ブラウザでアクセスするページを 専用のクライアントを作成し通信したいため submit形式のフォームをPOSTかGETで処理したい。

  • フォーム入力後の確認画面表示について

    こんにちは。tyabudaiと申します。 よろしくお願いします。 現在、私のサイトでCGIを使って投稿するフォームを作成しています。 流れは以下のようなものです。 1.フォームに内容を入力、送信ボタンでCGI起動。 (以下CGI) 2.入力内容をサーバのファイルに書込む。 3.送信完了のメッセージを表示 そして今、1と2の間に確認画面を表示する処理を 追加したいのですが、どのような処理にするのでしょうか? ソースについては勉強しますので、大まかな流れを教えて いただけないでしょうか?

    • ベストアンサー
    • CGI
  • フォームに入力しているのにはじかれてしまう

    詳細がわからないのですが、 あるWebでフォームに住所や氏名などを入力して、送信ボタンで内容を送るページを作成しています。 たまに、全ての項目に入力しているのに例えば「住所がブランクです。入力してください」というMsgではじかれてしまうという問い合わせがあります。 よく、「Cookieを有効にしてください」とか「JavaScriptがどうのこうの」ということが書いてあるフォームもありますが、本当の所原因は何でしょうか。 例えばブラウザはIEでしか使用できない、や他に原因があるのでしょうか。 よろしくお願いします。初心者です。

    • ベストアンサー
    • CGI
  • お問い合わせフォームの作り方について

    フリーのお問い合わせフォームをダウンロードし、今作ってるサイトにつけてブラウザで確認したところ、フォームにTESTと入力してエンターを押すとcgiのファイルが開いてしまいます。どのフォームにもそうなりますし、送信ボタン押してもそうなります。cgiの知識が全くないため原因がわからないです。もしおわかりになられる方、その経験あり!な方おられたらよろしくお願いします!!

    • 締切済み
    • CGI

専門家に質問してみよう