フォームの内容を別ページに表示させる



0   名前: サトシ : 2007/07/09(月) 22:18  ID:SFEr1aJs sub-.G
フォーム送信後、別ページを開き、
フォームに入力された名前を表示させることは
可能でしょうか?

【例】
1.フォーム名前欄に「鈴木」と入力→メール送信
2.送信後、指定のページが開き、「鈴木」さんようこそ
 と、任意の場所に挿入する。


ご回答、よろしくお願い致します。


●参考にしたページ
http://www.sumnet.ne.jp/domp/jsbs/kaisetsu/form6.htm
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=1225

1   名前: 匿名 : 2007/07/09(月) 22:18  ID:WBBhSnHA sub-Cz
メール送信するということは、CGI 等を経由してサーバ側で sendmail 等を使うということですよね(まさか action="mailto:.." なんてしていませんよね)。

ならば、メール送信後にサーバ側から「指定のページ」を送り出せば良いだけです。JavaScript は関係ありません。

2   名前: サトシ : 2007/07/09(月) 22:18  ID:jz9JGpSX sub-.G
コメントありがとうございます。
メール送信後にサーバ側から「指定のページ」を表示させることは
できますが、表示させたページの任意の場所に
フォームで入力された名前を表示させたいのです。

何かわかりましたら、よろしくお願い致します。

3   名前: 匿名 : 2007/07/09(月) 22:18  ID:0bN./3op sub-Cz
いやだから、フォームで入力された名前もサーバ側で取得できるんだから、HTML の好きな場所にその名前を埋め込んでクライアント(ブラウザ)に送り返せば良いだけです。例えば Perl なら:
use CGI;
my $q = new CGI;
my $name = $q->param("name");

print <<__________HTML__________;
Content-Type: text/html; charset=Shift_JIS

<!DOCTYPE html>
<html>
  <head><title>Welcome</title></head>
  <body><p>$name さん、ようこそ。</p></body>
</html>
__________HTML__________

むしろ、なぜ JavaScript 板に質問されたのですか?

4   名前: サトシ : 2007/07/09(月) 22:18  ID:eekYtYhh sub-.G
コメントありがとうございます。

方法を探していた所、JavaScriptで似たような
方法があったので、できるかと思いました。

Perlはあまりわからないのですが、
フォームcgiはKENT WEBのフォームメールを
使用しています。

http://www.kent-web.com/data/postmail.html

下記の
-----------------------------------------
use CGI;
my $q = new CGI;
my $name = $q->param("name");

print <<__________HTML__________;
Content-Type: text/html; charset=Shift_JIS
-----------------------------------------
記述は、どこに書けばいいでしょうか?
お手数おかけしますが、ご教授よろしくお願い致します。

5   名前: 匿名 : 2007/07/09(月) 22:18  ID:0bN./3op sub-Cz
総合あたりに移動した方がよろしいかと思います。

# Kent Web の postmail は送信完了画面が出ますよね。それをカスタマイズすれば良いだけです。thx.html や postmail.cgi を覗いてみましたか。

# JavaScript でやるなら、隠しフレームないし XMLHttpRequest で POST し、サーバからの応答を待って書き換えということになります。明確な目的がないのであれば、はっきり言って無駄です。

6   名前: サトシ : 2007/07/09(月) 22:18  ID:BvPTkYOk sub-.G
ありがとうございました。
CGIでなんとかやってみようと思います。

一覧へ戻る