• 締切済み

フォームメール確認画面から戻るためには?

perlを使って申込みフォームを作っています。ファイルとしてはa.htmlを使ってまずフォーム入力欄を作りました。 そこからa.cgiに飛ばして確認画面を作りました。そこからが問題です。もう一つamail.cgiを作りそこにいった時点で指定メールに送るように作ってあります。 しかしa.cgiで入力項目を確認してもらった時に入力項目が間違っていた場合に戻るボタンを設けなければいけませんが、戻るボタンでどのようにa.htmlにもどせばいよいのか解りません。 具体的にどのようなソースを使えば良いのか解らないのでどうか教えて頂けないでしょうか? お願します。

みんなの回答

  • lucky111
  • ベストアンサー率30% (75/244)
回答No.3

↓の回答とかぶるだけかも知れませんが、タグを書きます。 私は、エラーが出たら、 <a href="javascript:history.back()"><b>戻る</b></a> と置いて、戻ってもらってます。これだと、戻ってもフォームに入力したことは、passwordタグ以外は消えてないので、便利です。 「戻る」を利用しない場合には、フォーム自体をプログラムで表示させるようにして、エラーが出たら、入力フォームと一緒にエラー表示させる手もあります。 メジャーなサイトはよくこの手を使ってるようです。

  • makito
  • ベストアンサー率21% (3/14)
回答No.2

私もそのようなページを作った事がありますが、やはりブラウザの戻るボタンや sightさんのおっしゃっているようなJavaScriptを使う方法(戻るボタンと同じ) で解決?しました。 一部ブラウザでは、どうやら戻るボタンでは 内容が保持されないものもあるようです。 IE5.5を使っていますが、パスワード欄以外は保持するようです。 どうしてもやりたいなら、やはりCGIでフォームも作ってしまうのが 一番手っ取りばやいのではないでしょうか?

  • sight
  • ベストアンサー率53% (199/370)
回答No.1

これは、「入力確認だから、修正させるために戻ったときに、一度入力させたデータは保持したまま戻したいけれど、a.htmlはCGIで動的に作成されたページでないので、a.cgiからふつうにリンクを張ってしまうと入力したデータはなくなってしまう!」という意味でしょうか? そうだとしたら、a.htmlもCGIで作る、というのが一番いいのでしょうが、*.htmlのまま残すのでしたら、事前の策はa.cgiの中の戻るボタンは、JavaScriptのhistory.back()でブラウザのボタンと同様な動作をさせて戻らせる、ということですかね?

関連するQ&A