フォーム内容を送信前に「確認画面」で表示する方法

[上に] [前に] [次に]
上原 [E-Mail] [HomePage] 2000/02/26(土) 07:56:03
よく新規会員登録したり履歴書を送る際に、
「確認画面」が出て、「これでいいですか?」
って聞いてきますよね。
あれはどのようにすればできるのでしょうか。
フォームで来訪者が入力したデータの表示方法を
教えてください。

たれ 2000/02/26(土) 13:12:51
フォームHTML →
      確認CGI →
        "書き込み"もしくは"送信"するCGI(確認CGIと同居している場合もあり)

で可能です。
確認するCGI自体はそんなに難しくないです、はい。

上原 [E-Mail] 2000/02/26(土) 20:02:29
すみません、その確認するCGIというのは、
どういうものなんでしょうか、、、

びぎな++ 2000/02/26(土) 23:13:51
ログを取らずに(とってもいいが,そのときは本当の登録ログとは別にして)
ただsubmitボタンがある確認用HTMLを出力するだけです。

検索エンジンなどで探せば,そういう確認用をクッションしているCGIスクリプトを配布してるサイトがあるかもしれません。
僕はCGIサイトはあまり検索したことはないので知りません。(^^;

むぅす 2000/02/27(日) 00:16:52
同スクリプトの中に入れる場合は下記の様な感じで。
このやり方はJavaScriptをONにしていないと使えませんけれども

if ($FORM{'check'} eq "ok"{
書き込み処理
} else {
print "Content-type: text/html\n\n";
print "<head><title>確認</title></head>\n";
print "<body bgcolor=#ffffff>\n";
print "確認<br>\n";
print "<table border=1 cellspacing=1>\n";
print " <tr><td>名前</td><td>$FORM{'name'}</td></tr>\n";
print " <tr><td>メール</td><td>$FORM{'email'}</td></tr>\n";
print " <tr><td>コメント</td><td>$FORM{'com'}</td></tr>\n";
print "</table>\n";
print "<form><input type=button value='送信' onclick=\'location.href=\"***.cgi?check=ok\&name=$FORM{'name'}\&email=$FORM{'email'}\&com=$FORM{'com'}\"\'>\n";
print "</form>\n";
print "</body></html>\n";
exit;
}

むぅす 2000/02/27(日) 00:27:31
こちらの方がいいですね

if ($FORM{'check'} eq "ok"{
書き込み処理
} else {
print "Content-type: text/html\n\n";
print "<head><title>確認</title></head>\n";
print "<body bgcolor=#ffffff>\n";
print "確認<br>\n";
print "<form action=\"***.cgi\" method=\"POST\">\n";
print "<table border=1 cellspacing=1>\n";
print " <tr><td>名前</td><td>$FORM{'name'}</td></tr>\n";
print " <tr><td>メール</td><td>$FORM{'email'}</td></tr>\n";
print " <tr><td>コメント</td><td>$FORM{'com'}</td></tr>\n";
print "</table>\n";
print "<input type=\"hidden\" name=\"name\" value=\"$FORM{'name'}\">\n";
print "<input type=\"hidden\" name=\"email\" value=\"$FORM{'email'}\">\n";
print "<input type=\"hidden\" name=\"com\" value=\"$FORM{'com'}\">\n";
print "<input type=\"hidden\" name=\"check\" value=\"ok\">\n";
print "<form><input type=\"submit" value=\"登録\">\n";
print "</form>\n";
print "</body></html>\n";
exit;
}

[上に] [前に] [次に]