• ベストアンサー

データを別のhtmlページに受け渡す方法はありますか?

HPビルダー6で制作中なのですが、 アンケートフォームの内容(データ)を別のhtmlページに確認画面として 受け渡しする事は可能でしょうか?どなたか教えて下さい。 ちなみに、自作CGIプログラムはプロバイダーの方では使えない様です。

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

  • ベストアンサー
  • leaz024
  • ベストアンサー率75% (398/526)
回答No.2

すみません。土日出かけていたため、回答が遅れました。 No.1に挙げた2の方法で書いたHTMLを載せますので、参考にしてみて下さい。 (行頭の全角スペースは、半角スペースやタブに変換してください。) ■Aページ ※<HEAD>~</HEAD>内に <SCRIPT language="javascript"><!-- function kakunin(f) {   var prm = new Array();   if (f.namae.value) prm[prm.length] = "namae="+escape(f.namae.value);   if (f.adress.value) prm[prm.length] = "adress="+escape(f.adress.value);   for (var i=0; i<f.sexy.length; i++)     if (f.sexy[i].checked) prm[prm.length] = "sexy="+escape(f.sexy[i].value);   prm[prm.length] = "os="+f.os.options[f.os.selectedIndex].value;   if (f.akosu.value) prm[prm.length] = "akosu="+f.akosu.value;   if (f.bkosu.value) prm[prm.length] = "bkosu="+f.bkosu.value;   if (f.ckosu.value) prm[prm.length] = "ckosu="+f.ckosu.value;   prm[prm.length] = "siharai="+escape(f.siharai.options[f.siharai.selectedIndex].value);   for (var i=0; i<f.omake.length; i++)     if (f.omake[i].checked) prm[prm.length] = "omake="+escape(f.omake[i].value);   prm[prm.length] = "kansou="+escape(f.kansou.value);   location.href = "b.html?"+prm.join('&');   return false; } //--></SCRIPT> ※FORMタグにonSubmitを加える。 <FORM method="POST" action="mailto:xxxxx@xxx.xx.xx" enctype="text/plain" onSubmit="return kakunin(this)"> ※name属性にnameという値はあまりよくないので、namaeに変更 <INPUT size="30" type="text" maxlength="30" name="namae"></TD> ※確認ボタンをSUBMITに変更 <INPUT type="submit" value="確認"> ■Bページ <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <TITLE></TITLE> <SCRIPT language="JavaScript"><!-- var FORM = new Array(); // パラメータ解析 var buffer = location.search.substr(1); var pairs = buffer.split("&"); for (var i in pairs) {   var pair = pairs[i].split('=');   if (FORM[pair[0]]) FORM[pair[0]] += "\0"+unescape(pair[1]);   else FORM[pair[0]] = unescape(pair[1]); } function makeTR(sbj,val) {   return '<TR><TD width="25%">' + sbj + '</TD><TD width="75%">' + val + '</TD></TR>'; } function drawHidden() {   for (var p in FORM) {     var val = FORM[p].split(/\0/);     for (var n in val)       document.writeln('<INPUT type="hidden" name="'+p+'" value="'+val[n]+'">');   } } //--></SCRIPT> </HEAD> <BODY bgcolor="#ffffcc"> <P align="center"><B><FONT size="+2">確認してください</FONT></B></P> <FORM method="GET" action="mailto:xxxxx@xxx.xx.xx" enctype="text/plain" name="fomu"> <TABLE border="1" width="414" align="center"> <SCRIPT language="JavaScript"><!-- if (FORM["namae"]) document.writeln(makeTR('名前', FORM["namae"])); if (FORM["adress"]) document.writeln(makeTR('住所', FORM["adress"])); if (FORM["sexy"]) document.writeln(makeTR('性別', FORM["sexy"])); if (FORM["os"]) document.writeln(makeTR('OS', FORM["os"])); var sh = new Array(); if (FORM["akosu"]) sh[sh.length] = '01:' + FORM["akosu"] + "個"; if (FORM["bkosu"]) sh[sh.length] = '02:' + FORM["bkosu"] + "個"; if (FORM["ckosu"]) sh[sh.length] = '03:' + FORM["ckosu"] + "個"; if (sh.length) document.writeln(makeTR('商品', sh.join(' '))); if (FORM["siharai"]) document.writeln(makeTR('購入方法', FORM["siharai"])); if (FORM["omake"]) {   var omk = FORM["omake"].split(/\0/);   if (omk.length) document.writeln(makeTR('おまけ', omk.join(' '))); } if (FORM["kansou"]) {   if (FORM["kansou"]) document.writeln(makeTR('感想', FORM["kansou"].replace(/\r\n|\r|\n/g, "<BR>"))); } drawHidden(); //--> </SCRIPT> </TABLE> <CENTER><INPUT type="submit" value="送信"></CENTER> </FORM> </BODY> </HTML> 正常に確認ページが表示され、その内容で送信できることは確認しましたが、actionにメールアドレスをいれてうまくいくかは分かりません。 どこかのフォームでコードサービスを利用した方が楽かもしれませんよ。

konkon7
質問者

お礼

leaz024さん、今晩は!leaz024さんから頂いたソースを早速コピペして 実際に試してみたところ・・・す・すごいです!!  本当に有難う御座いました。 ついでと言ってはなんなんですが、No.1に挙げた1の方法で書いたソースを 今後の参考にしたいので、(見てみたいんです。)また、教えてもらえないでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.1

確認画面を表示するにも、いろいろな方法があります。 1.フォームの内容を参照して確認ページを生成し、document.write でウィンドウを上書きする。   ※2ほどの難解さはないが、全HTMLを出力するのでデザインの変更が面倒 2.GET渡しで確認ページを表示し、location.search(フォーム内容)を解析してHTMLを生成する。   ※フォームのデータ量に制限がある上に難解     HTMLを用意しておけるのでデザインの変更は容易 3.showModalDialog で確認ページを表示し、パラメータを介してフォーム内容を受け取りHTMLを生成する。   ※比較的容易に作成できHTMLも用意しておけるが、IE限定 4.confirm(確認ダイアログ)を使う。   ※見た目はよくないが、もっとも簡単に作成できる 1,2はページ遷移タイプで、3,4はダイアログ表示タイプになります。 どれも一長一短なので、各制限などから適切なものを選ぶとよいでしょう。 # 要らぬ心配かもしれませんが、アンケートの集計はどうやって行うのでしょうか?

konkon7
質問者

補足

leaz024さん、返事ありがとうございます! 私、間違えていました「アンケートフォーム」じゃなく「メールフォーム」です。 こんな事も間違えてしまう超素人なので質問が下手ですいません。 4つの方法をあげてもらいましたが、たぶん私がやろうとしてるのは「1」か「2」だと思います。(どちらが私のやろうとしてる事に適しているのか分かりません) やりたい事は、Aページから「フォームに記入」→「確認ボタンを押す」 →Bページに「確認内容表示」→そのままBページから「送信」です。 (確認内容表示する際フォームに記入があった項目だけを表示し    メールで受け取る際にも確認内容表示された内容と同じにしたいのです。)   ちなみに、Aページ・Bページのソースを下にコピペします。 どこにどの様なプログラムをいれたらいいのか教えて下さい。 プログラムを作成する技術は無くコピペするのがやっとなんです。 ここからAページ***************************************** <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM WebSphere Homepage Builder V6.0.1 for Windows"> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> </HEAD> <BODY> <FORM enctype="text/plain" name="fomu"> <CENTER> <TABLE border="1" width="414" height="74"> <TBODY> <TR> <TD>名前</TD> <TD><INPUT size="30" type="text" maxlength="30" name="name"></TD> </TR> <TR> <TD>住所</TD> <TD><INPUT size="50" type="text" name="adress"></TD> </TR> <TR> <TD width="83">性別</TD> <TD width="267"><INPUT type="radio" name="sexy" value="男">男   <INPUT type="radio" name="sexy" value="女">女</TD> </TR> <TR> <TD>OS</TD> <TD><SELECT name="os"> <OPTION selected>なし</OPTION> <OPTION value="win95">windowrs95</OPTION> <OPTION value="win98">windowrs98</OPTION> <OPTION value="winMe">windowrsMe</OPTION> <OPTION value="winXp">windowrsXp</OPTION> </SELECT></TD> </TR> <TR> <TD width="83">商品</TD> <TD width="267">01<INPUT size="5" type="text" name="akosu">個  02<INPUT size="5" type="text" name="bkosu">個  03<INPUT size="5" type="text" name="ckosu">個</TD> </TR> <TR> <TD>購入方法</TD> <TD><SELECT size="3" name="siharai"> <OPTION value="現金" selected>現金</OPTION> <OPTION value="カード">カード</OPTION> <OPTION value="銀行振込">銀行振込</OPTION> </SELECT></TD> </TR> <TR> <TD width="83">おまけ</TD> <TD width="267"><INPUT type="checkbox" name="omake" value="A品">A品 <INPUT type="checkbox" name="omake" value="B品">B品 <INPUT type="checkbox" name="omake" value="C品">C品</TD> </TR> <TR> <TD width="83">感想</TD> <TD width="267"><TEXTAREA rows="2" cols="45" name="kansou"></TEXTAREA></TD> </TR> </TBODY> </TABLE> </CENTER> <BR> <CENTER><INPUT type="button" value="確認"></CENTER> </FORM> </BODY> </HTML> ここからBページ*************************************** <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM WebSphere Homepage Builder V6.0.1 for Windows"> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> </HEAD> <BODY bgcolor="#ffffcc"> <P align="center"><B><FONT size="+2">確認してください</FONT></B></P> <FORM method="POST" action="mailto:xxxxx@xxx.xx.xx" enctype="text/plain" name="fomu"> <CENTER><INPUT type="submit" value="送信"></CENTER> </FORM> </BODY> </HTML> *****以上です。**************************************** 私がしようとしてる事は可能なのでしょうか?お願い致します。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ホームページビルダーでホームページを作っています。お問い合わせページの送信が機能しません。助けてください!

    ホームページビルダーV9にてHPを作成しました。ジオシティーズでジオプラスを契約しているものです。 ビルダーのフォームを使ってお問い合わせページを作りましたが、フォームの属性に何を入れたらいいのか、ジオシティーズヘルプを見ても分かりません。 ジオプラスに入るとCGIが使えるとあったのですが、何か設定に足りないのでしょうか? 私はHP作成ほぼ初心者です。ビルダーのスタンダードでページ作成をし、フォームにいろいろな入力部品を入れてページを作成しました。このままではCGIプログラムになっていないんですよね。(よく分からないのですが) CGIプログラムとしてサイトに転送するには、属性のフォーム欄にジオシティーズの指定するものを入れるだけで、いいのでしょうか? 属性の『アクション』『メソッド』など何を入れたらいいのか教えてほしいのです。 お願いします。

  • HPビルダーでアンケートフォームを作りたい

    HPビルダーでアンケートフォームを作ってるんですが、プロバイダーとのマッチングがうまくいきません。アクションとかはプロバイダーから教えてもらったんですが、CGIのファイルをどこかに埋め込んだりしないと出来ないのでしょうか?プロバイダーはInterQです。できれば、同じプロバイダーで、ビルダーを使って作ったことがある方がありがたいです。「この通りにしなさい!」と教えて欲しいのですが。

  • CGIのアンケートで画像の転送

    HP初心者です。CGIのホームページビルダーのサンプルアンケートでプロバイダーCGIを使ってアンケート内容のほか、画像も送信できるアンケートフォームを作ったのですが、アンケート結果とファイル名はメールに届くようになりましたが、画像として開くことができません。どなたか解決策ご教示ください。

    • ベストアンサー
    • CGI
  • ホームページビルダー14のクイックで制作したメールフォームについて教え

    ホームページビルダー14のクイックで制作したメールフォームについて教えてください。 サンプルを使って予約画面を制作し、送信ボタンを押すとメールが送られるように設定をしたいのですが、IBMに問い合わせるとCGIを使用することを勧められました。 これからプロバイダー契約をする予定の「ロリポップ」に問い合わせると、「ロリポップ」のメールフォームを紹介されました。しかし制作したHPと雰囲気が全く異なるので、ホームページビルダーで制作したメールフォームを使用したいのですが、そのような設定はロリポップではできないのでしょうか? また、他にできるプロバイダーがあれば教えてください。 パソコンに詳しくないうえに、急いでHPをアップしなくてはならず、とても困ってしまっています。お詳しい方がいましたら教えていただけると嬉しいです!

  • 入力フォーム後の確認ページの作り方

    今、入力フォームを使ったWebページを作っています。 アンケートなどに回答すると、「これでよろしいですか?」と、 記入ミスが無いか確認できる画面が、送信ボタンを押すと表示 される場合がありますが、これってJavaScriptのみでつくるこ とは可能ですか?それともCGIを組み合わせないとダメですか?   入力フォームで入力された値をJavaScriptで作った変数に格納して、 その変数を別ページ(確認ページ)で読ませてこのようなページが できないものか考えているのですが、私の力量ではうまくいきませ んでした。   是非みなさんのお知恵をお借りしたいと思います。 よろしくお願いします。

    • 締切済み
    • CSS
  • HPでのアンケートページについて

    アンケートページを作りたいのですが?細かい設定がわかりません。 どうすればいいか教えて下さい! プロバイダーは、wakwakで、 ソフトはHPビルダー6です。 ひょっとして作れないのですか? どうしても作りたいのですが、何かいい案があったら教えて下さい! お願いします!

  • ビルダーによるメールフォーム制作のことで…

    現在ホームページビルダーvol.8で携帯とPCで見れるサイトを作っています。ページのターゲットプラウザは標準です。 困っていることはこのサイトhttp://www.aimix.jp/mailfrm.html を参考にCGIを使わずにPC上でメールフォームを制作しましたのですが、PC上から送るフォームの内容はちゃんと表記されて送信されるのに対し、携帯から送るとただの空メールになってしまうのです。 どうしたら携帯からも送ることが出来るのでしょうか? それともう一つ、閲覧者がフォームの送信内容を確認する為に、送信前に記入した情報を確認、また別に修正画面を表示させる設定をするにはどうすればいいのでしょうか? できればこの2つの事について誰か教えてください! よろしくお願いします。

  • HP上でのアンケートページの作り方

    ホームページビルダーV9を使ってHPを作っています。その中にアンケート頁を作りたいのですが方法を教えて下さい。『挿入』から『アンケート』に入る方法じゃなくて『フォームと入力部品』から入って行く方法なんですが、最後はどうすればどうなるんでしょう(泣笑)

  • CGI禁止のプロバイダで、アンケートページを作るには?

    ホームページビルダーを使っています。 ボタンやテキストボックスなどを配置して、 きれいなアンケートページを作りました。 ・・・でも空しいです。なぜなら、 ウチのプロバイダは、CGI禁止だからです。 どうしてもアンケートページを作りたい! でも今のプロバイダに登録したい! そういう場合、何か対応策はあるでしょうか? 但し!mailto:を利用する方法、 つまりメールソフトを利用する方法"以外"で、 よろしくお願いします。

  • 送信フォームの確認ページ

    会社で課のHP作っていまして、独学でやっています。 cgiを使わないで、(というかわからないので) mailtoでフォームを送信する様にページを作りました。 そのフォームが送られたという確認のページを送信ボタンを 押した後に表示をさせたいのですが、 やはりcgiを使わないと出来ないのでしょうか?

    • ベストアンサー
    • CGI