• ベストアンサー

フォームでCGIにとばした処理結果を。。

はじめまして。 JavaScriptもHTMLもCGIもほとんど初心者です。 現在フリーのCGI(Perl:アンケートフォーム)を使用しようとしてるのですが、HTMLファイルのformにあるactionで CGIにとばして、その結果を(JavaScriptで開いた?)新しいウィンドウに表示したいのですが、可能でしょうか? さらに、出来ればその結果が表示される新しいウィンドウにはメニューバーやスクロールバーをなくして、「閉じる」というボタンをつけて閉じるようにしたいのですが、それも可能でしょうか? 何卒よろしくお願いします。 =====

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

  • ベストアンサー
noname#199778
noname#199778
回答No.1

CGIの処理結果を別ウィンドウで受け取る、その開いた別ウィンドウにメニューバーやスクロールバーを表示させない、という点については、JavaScriptとHTMLで可能と思います。 HTMLファイルのCGIを呼び出すform要素を、下記のようにすれば、一応はご質問文で言われている動作になるのではないかと思います。 <form action="hoge.cgi" target="result_win" onSubmit="window.open('','result_win','menubar=no, scrollbars=no');"> 上記ソースでは、そのフォームが送信されたときに、JavaScriptで、result_winと言う名前をもつメニューバーとスクロールバーが非表示の空ウィンドウを開き(「onSubmit="window.open('','result_win','menubar=no, scrollbars=no');"」がその処理を指定している部分になります)、そのウィンドウをターゲットにして(「target="result_win"」がその指定になります)フォーム送信が行われるようになっているはずです。 JavaScriptのwindow.open()の処理についての詳細は、参考URLに詳しいと思いますので、良ければご参照ください。 参考URLは、「とほほのWWW入門」内のページです。 新しいウィンドウに対して、「閉じる」ボタンを追加する点については、CGI自体を書き換える必要があると思います。 参考になれば…

参考URL:
http://tohoho.wakusei.ne.jp/js/window.htm#open
nichibe
質問者

お礼

コメントありがとうございます!! form内をアドバイスどおり変えたら、CGIの処理結果が新しいウィンドウで開くようになりました。 lead1976さんの解説も分かりやすく理解することが出来ました。ありがとうございます。 また、閉じるボタンを追加するにはCGIをどのように書き換えたらいいのでしょうか? ちなみに、CGIファイルの結果を表示する部分の最後尾に print "<p align=center><a href="javascript:window.close()">閉じる</a>\n"; &foot;  #フッタ表示 と、print部分を加えたらInternal Server Errorになりました。。。 もし、お時間ありましたらご教示いただけますでしょうか? よろしくお願いします!

関連するQ&A

  • CGIの処理結果をHTML内に表示したい!

    はじめまして。 CGI初心者です。 現在、とあるフリーのアンケートのCGI(perl)を改良していて、それは、アンケートに答えて、送信ボタンを押すと、CGIファイルの処理結果として、これまでのアンケートの集計結果がグラフで表示されるというものです。 その集計結果のみを、別ページ(左側や上部にメニューがあるもの)のHTML内に収めたいのです。 ※新しいウィンドウが開かなくてもOKです。 ※その別ページというのが私のオリジナルのページになります。 イメージとしては、 1)anket.html(アンケートに答える)  ↓ 2)anket.cgi(返答内容とこれまでの集計を処理)  ↓ 3)anket.html(集計結果が埋め込まれたHTMLファイルが表示される) 初心者なので、用語の使い方等間違っていましたらすいません。。 よろしくお願いします!

  • CGIによるアンケートフォームのメール送信

    私は今までHTMLでアンケートフォームを作成していました。しかし、HTMLで次のコードを組み込むとメール送信時に警告が出てしまいました。 <form action="mailto:○○○@△△△.co.jp"> そこで、いろいろなアンケートフォームのソースを見てみるとCGIが使われているようでした。 CGIはまったくの初心者です。 CGIでのアンケートフォームの作り方を教えてください。

    • ベストアンサー
    • CGI
  • CGIによるアンケートフォーム

    CGIでのアンケートフォームを作るのに次のコードの○○○△△△.cgiというところには何を入れればいいのでしょうか? <FORM action="○○○△△△.cgi" method="POST">

    • ベストアンサー
    • CGI
  • 別ウィンドウへcgiの結果表示をする時に・・・

    FORMのACTIONでcgiを指定し、その結果をTARGET="_blank"で別ウィンドウへ表示する時に、別ウィンドウのメニューバーを消したいのですが、そういうことってできますでしょうか? <FORM METHOD="post" ACTION="../cgi-bin/sam.cgi" NAME="form" TARGET="_blank"> <SELECT NAME="year"> <OPTION SELECTED>2001</OPTION> <OPTION>2002</OPTION> <OPTION>2003</OPTION> </SELECT> </FORM> 元のソースはこんな感じです。このTARGET="_blank"のMENUBAR="0"にしたいのですが・・・ よろしくお願いします。

  • CGIの出力結果を小窓ウィンドウで表示させたい

    フォームでボタンを押すとCGIの画面に飛ぶ流れなのですが、ボタンを押したときにJavaScriptの小窓のウィンドウで表示させたいのですが方法がわかりません。 「target」を使って下記のようにする方法も知っていますが、あえて「JavaScriptの小窓のウィンドウ」で出したのです。宜しくお願いします。 <form method="post" action="xx.cgi" target=_blank>

  • CGI(Perl)でメールフォームを作ったのですが

    CGI(Perl)でメールアドレス、名前、内容のメールフォームを作ったのですがうまくいきません。 http://homepage.biglobe.ne.jp/errorpage/500.html CGIプログラムのエラーが発生しました。 原因 CGIプログラムの実行に問題があります。 まれに、予期しないサーバのエラーが原因でこのメッセージが出る場合があります。 と表示されます。 CGIのプログラムを作る前はHTMLだけで作っていました。 <form action="mailto:メールアドレス"~ メールアドレスを非公開で送信するには。

    • ベストアンサー
    • Perl
  • アンケートCGI作成について、form actionの呼びだし等につい

    アンケートCGI作成について、form actionの呼びだし等について質問です。 初めまして、CGIアンケートを作成しようとしているPerl初心者です。 説明ページ(ex01.html) ↓ フォーム付きアンケートページ(enk01.html) ↓ 説明ページ(ex02.html) ↓ 以下略 という流れでアンケートを続かせたいのですが (だいたい、ex.htmlとenk.htmlが各20ずつくらいです。) フォーム付きアンケートのフォーム <form action="form.cgi" method="post"> <input type="radio" name="Emotion_Body" value="0" checked> 選択肢1 <input type="radio" name="Emotion_Body" value="1"> 選択肢2 <input type="radio" name="Emotion_Body" value="2"> 選択肢3 <input type="submit" value="次のアンケート"> となっていて、actionに次のページのhtmlをいれ込むことができませんでした。 (form.cgi:formから受け取ったデータを外部ファイルへ書きだすCGIファイルです。) フォームの「次のアンケートボタン」を押すと、 form.cgiにフォームのデータを送りつつ、ex02.htmlを表示させるということはできないものでしょうか? 過去ログによるCGIに表示させる方法を書くのだと、 フォームページの間に、ただのhtmlファイルを挟むので、 (例:enk01.html→ex02.html→enk02.html→…) 各ページに対応したCGIファイルを書かなければならないということなのでしょうか? よろしくお願いいたいします。

    • ベストアンサー
    • Perl
  • 1つのフォームで2つのcgiにデータを送るには

    どうぞよろしくお願いします。 テキストエリアにデータ入力して送信ボタンを押すと、 入力した内容が2つのcgiに送られるというようにしたいのですが、こういったことは可能でしょうか? イメージとしては下記のような感じです。 <form action="CGI名1" action="CGI名2" method="POST"> <inpu type="text" name="text1" size="32"> <input type="submit" value="送信"> </form> 両方の送信結果を別々のウインドウで表示します。 もしformタグでは不可能な場合、何か代換法がありましたらよろしくお願いいたします。

    • 締切済み
    • CGI
  • アンケートフォームの作り方

    HTMLプログラミングを始めました。そこで、アンケートフォームを作っているのですが、次のコードを組み込んでテストしたところ警告表示が出てしまいました。 <form action="mailto:○○○@△△△.co.jp" 対策を教えてください。

    • ベストアンサー
    • HTML
  • CGI フォームの動作確認はできたのですが、後ひとつお伺いできないでしょうか??

    dreamweaver CS3でWEBサイトを制作しました。 サーバーはインフォーシークです。 フォームのところで躓いています。 サイトファイル:6枚 フォームファイル:2枚 2枚の内訳 アンケートフォームと、注文フォームを分けて制作しました。 アンケートフォームは、CGI-BINの中にform.htmlファイルとしておいています。(こちらは正常に動きます。) 注文フォームは、同じ拡張子だとCGI-BINの中の同じ階層に置けませんよね?? ❖だめもとで、2点確かめました。 1点目:CGI-BINの中の違う階層に置いて試したのですが、文字化けしたメールがやってきました。 2点目:INDEX.HTMLと同じ階層のフォルダーに置いたところ、文字化けした状態でメールがやってきました。 質問したいことは、複数のform.htmlファイルを置きたいのですが、どなたかご教授くださいませ。 よろしくお願いいたします。

専門家に質問してみよう