CGI(Perl)のメッセージボックス表示について

このQ&Aのポイント
  • CGI(Perl)を使用してメッセージボックスを表示させる方法を教えてください。
  • 「はい」と「いいえ」のボタンが表示されたメッセージボックスをCGI(Perl)で作成したいです。
  • 「はい」が押された場合は送信され、 「いいえ」が押された場合は「送信を中止しました」と表示するメッセージボックスを表示させたいです。
回答を見る
  • ベストアンサー

CGI(Perl)のメッセージボックス表示について

CGI(Perl)のメッセージボックス表示について 上記について質問です。 <input type=submit value=" 送 信 "$fm> <input type=reset value="リセット"$fm></td></tr></table></form></ul><hr width=\"95\%\"> _FORM_ 上記のソースで送信ボタンを押した後に メッセージボックスを表示させてif関数等で 「はい」「いいえ」と分けたいのですが、 検索してもサンプルソースが中々見つかりません。 はいを押した時に送信されて、 いいえの時に「送信を中止しました」と表示される メッセージボックスを表示したいのですが・・・・。 どうすれば良いのでしょうか・・・。

  • Perl
  • 回答数2
  • ありがとう数9

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

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

CGIはサーバー側の処理プログラムです。 ブラウザ側は、CGIが出力したHTMLを表示するだけ。 一方 > はいを押した時に送信されて、 > いいえの時に「送信を中止しました」と表示される これは、サーバ(CGI)側に何かを送る前の段階で処理をしたいというわけですから、サーバ側では処理できません。 JavaScriptなどで、ブラウザ側で処理する必要があります。この処理そのものにはCGIの出る幕はありません。 JavaScriptでそういう処理を行うようなHTMLコードを作成し、CGI側ではそういうHTMLを出力するようにします。 具体的な方法については、JavaScriptについて調べてください。 例えば http://www.tagindex.com/javascript/form/submit.html など。

mivicates
質問者

お礼

やはりジャバたんを頼るしか無いのですか(´・ω・) ありがとうございました。

その他の回答 (1)

回答No.2

No.1さんのおっしゃるとおりで、メッセージボックスはjavascriptでされることになると思います。 CGIでするならもう一枚内容確認画面を作って、そこで「送信する」「送信をやめる」といった ボタンを作って似たようなことはできると思います。 それであれば、その後押されたボタンによって処理をわけることはできます。 そういうメールフォームはあります。

mivicates
質問者

お礼

Javaは結構覚えているのですが、 やはりもう一枚別の.cgi作ったほうが良さそう?ぽいですかね・・・・。 んー・・・・。簡単なjava選びます。 ありがとうございました。

関連するQ&A

  • JSPでメッセージボックスを表示したい

    urizakaです。 さて、早速質問したいのですが、現在作っているJSPのプログラムで ボタンを押すとFORMのActionに記述されているサーブレットに移動 してサーブレットを実行するかキャンセルするかという(いわゆるVB でいうところの)メッセージボックスを表示したいのですが、そのような 方法というのはあるのでしょうか?確か、javaにはメッセージボックス という概念が無かったような気もするので… 環境は、JBuilder4で、HTMLのソースコードは <Form Method="POST" Action="×××(ここにサーブレットの アドレスを入力)"> <Input type="submit" Value="押す"> </Form> です。  宜しくお願いします。

    • ベストアンサー
    • Java
  • cgiのショッピングカートで画像を表示させたい

    買い物かごの中身のページに画像を使いたいのですが、 どのようにしたらいいのでしょうか? print "<input type=submit value=\"order\"> <input type=reset value=\"reset\"></form><p><br>\n"; となっているところを print "<input type=image src=\"http://www.yahoo.co.jp/image/order.jpg\"> <input type=reset value=\"reset\"></form><p><br>\n"; のような感じで変更してみたのですが、 画像はちゃんと表示されるものの、Orderボタンを押して次の確認ページに移ると x 12 y 32 みたいな余計なデータが勝手にテーブル内に表示されてしまって困っています。 上記の変更をするぐらいで、なんでこんなことがおこるのかよく分かりません。 どなたか知っている方がいらっしゃたら、教えてください。 お願いします。

    • ベストアンサー
    • CGI
  • チェックボックス(CGI)のズレをなくすにはどうすればよいでしょうか?

    現在メールフォームを勉強中です。チェックボックスの項目を1つだけ設定していますが、チェックを外せば下の項目が上に一段ズレて送信されてきます。 チェックが外されていてもその項目だけ“空白”もしくは“チェックなし”とかに出来ますでしょうか?お手数ですが、ご教授ください。 【html側】 <form method="POST" action="mail.cgi"> <input type="text" name="01"> <input name="checkbox" type="checkbox" value="on"> <input type="text" name="02"> <input type="text" name="03"> <input type="submit" value="確認画面"> </form> 【cgi側】 $form0 = "01"; $form1 = "チェック"; $form2 = "02"; $form2 = "03"; if($form0 eq ""){ $form_input0 = ""; } else { $form_input0 = "<p class=\"text\">$form0 = $VALUE_DATE[0]</p>";} if($form1 eq ""){ $form_input1 = ""; } else { $form_input1 = "<p class=\"text\">$form1 = $VALUE_DATE[1]</p>";} if($form2 eq ""){ $form_input2 = ""; } else { $form_input2 = "<p class=\"text\">$form2 = $VALUE_DATE[2]</p>";} if($form3 eq ""){ $form_input3 = ""; } else { $form_input3 = "<p class=\"text\">$form3 = $VALUE_DATE[3]</p>";} <FORM method="post" action="mail.cgi"> <INPUT type="hidden" name="$form0" value="$VALUE_DATE[0]"> <INPUT type="hidden" name="$form1" value="$VALUE_DATE[1]"> <INPUT type="hidden" name="$form2" value="$VALUE_DATE[2]"> <INPUT type="hidden" name="$form3" value="$VALUE_DATE[3]"> <INPUT type="submit" value="この内容で送信する"></FORM> $mbody .= "\n"; $mbody .= "フォームより以下の内容が送信されました。\n"; $mbody .= "\n"; $mbody .= "=============================================================\n"; $mbody .= "\n"; $mbody .= "・$form0:$VALUE_DATE[0]\n"; $mbody .= "\n"; $mbody .= "・$form1:$VALUE_DATE[1]\n"; $mbody .= "\n"; $mbody .= "・$form2:$VALUE_DATE[2]\n"; $mbody .= "\n"; $mbody .= "・$form3:$VALUE_DATE[3]\n"; $mbody .= "=============================================================\n"; $mbody .= "\n"; ソースは文字制限の関係で省略しています。解りにくいですが、宜しくお願いします。

    • 締切済み
    • CGI
  • メールフォーム

    【満足できる回答に300ポイント】メールフォームをホームページに設置しました。CGIはフューチャースピリッツhttp://www.future-s.com/でお借りしました。送信ボタンを押した後、自分が指定した特定のページを表示させたいのですが、借りているところのホームページに行ってしまいます。自分の指定したページを表示させるにはどんなHTMLにしたらいいのでしょうか? 現在は下記のようなHTMLを使っています。 <form action="http://form3.future-s.com/cgi/form3.cgi" method="post"> <input type="hidden" name="formid" value="IDナンバー"> <input type="hidden" name="formsubject" value="○○"> <input type="hidden" name="formlog" value="1"> 中略 </FONT><P><FONT size="-1"><INPUT TYPE="submit" VALUE="送  信"> <INPUT TYPE="reset" VALUE="リセット"> もしHTMLが問題でないなら、下記の条件を満たすフォームを教えてください。 ・CGIを借りても広告の入らないもの ・フォームは自分で作ったものが使えること ・送信後、自分が特定したページを表示させること ・無料であること どうぞよろしくお願いします。

  • CGIでチェックボックスのエラーチェック

    下記のような感じで チェックボックスをいくつか配置し、CGIで動かしています。 それぞれの質問に関して未選択がある場合、 メッセージボックスで「未選択があります」と表示させたいです。 できればjavascriptでなくCGIでやりたいです。 どのようにコードを書けばいいですか? ためしに以下のように書いてみましたがだめでした。 ・・・ elsif ($q1 eq "" && $q2 eq "") { &error($error = "すべての項目に回答して下さい"); } ・・・ お願いいたします! <form name="q1" action="test.cgi" method="POST"> Q1 <input type="radio" name="q1" value="q1_a"> A <input type="radio" name="q1" value="q1_b"> B <input type="radio" name="q1" value="q1_c"> C Q2 <input type="radio" name="q2" value="q2_a"> D <input type="radio" name="q2" value="q2_b"> E <input type="radio" name="q2" value="q2_c"> F </form>

    • ベストアンサー
    • CGI
  • 一つのページで二つのFormを別々に使いたい

    <body> <form name="fm1"> <input type="hidden" value="1" id="page"> <input type="button" value="送信する" onClick="execute()"> </form> <form name="fm2"> <input type="hidden" value="2" id="page"> <input type="button" value="送信する" onClick="execute()"> </form> <div id="container">content</div> </body> </html> 上記のように同じ関数execute()を実行するのですが、受け渡す値がvalue="1" と value="2"と別々になっています。 素人考えではフォームfm1とfm2とは別々の値(1or2)を渡すと思ったのですが、どちらのボタンを押してもvalue="1"の結果となります。 二つのフォームを別々に動作させるにはどのようにすればよいでしょうか。

  • htmlでチェックボックスを全選択

    現在perl言語とhtml言語を使用しweb上で見れるホームページを作成しています。 perl言語とhtmlを言語を使用して全てのチェックボックスにチェックをいれるボタンを作成したいのですが、 中々上手くいきません。 ※以下.cgi内の部分ソース print <<HTML_BODY; </table><br> <input type='submit' value='送信'> <input type='reset' value='リセット'> </center> </form> </body> </html> HTML_BODY ネットでも調べたのですが、JavaScriptを使用しないとできない?様な事が書かれていました。 私一人では分からないので、皆様ご教授お願い致します。

    • ベストアンサー
    • Perl
  • セレクトボックスとチェックボックスを使った絞込み検索

    Yomi-Searchについての質問なのですがタイトルの通りの質問でチェックボックスを使った絞り込み検索では 01_03 04_01 と検索結果に表示されるのですがセレクトボックスとチェックボックスを組み合わせて絞り込み検索をしてみると 01_0304_01 とこのようにカテゴリとカテゴリの間にスペースが入らず絞り込み検索が出来ません‥ タグはこのように書きました。 <FORM action="http://www..." method="get" target="" name="form1"> <INPUT type="hidden" name="mode" value="search"> <INPUT type="hidden" name="page" value="1"> <INPUT type="hidden" name="sort" value="mark"> <INPUT type="hidden" name="engine" value="pre"> <INPUT type="hidden" name="kn" value="30"> <SELECT size="1" name="word"> <OPTION type="selected" value="">--------</OPTION> <option value="01_01" name="word1">○○○</option> <option value="01_02" name="word2">○○○</option> <option value="01_03" name="word3">○○○</option> </SELECT><BR> <BR> <INPUT type="checkbox" name="word4" value="04_01">○○○<BR> <INPUT type="checkbox" name="word5" value="04_02">○○○<BR> <INPUT type="checkbox" name="word6" value="04_03">○○○<BR> <BR> <INPUT type="submit" value=" 検 索 "> <INPUT type="reset" value="リセット"> &nbsp; </FORM> 全くの初心者ですいませんが良きアドレスなどをお願いします。

  • ソースコードに読み込み側phpの結果を表示させたい

    http://itpro.nikkeibp.co.jp/article/COLUMN/20060525/239029/?ST=develop このページではajaxを使ってhtmlファイルにphpファイルを読み込ませるサンプルが紹介されていますが、このサンプルを実際にブラウザで表示した後にctrl+Uで開くソースコードでは↓のようになっています。 <body> <form name="fm"> ISBNコード: <input type="text" name="isbn" size="30" /> <input type="button" value="送信" onclick="send()" /> <div id="result"></div> </form> </body> 読み込み側のphpファイルの内容も↓のようにソースコードに表示させたいです。 <body> <form name="fm"> ISBNコード: <input type="text" name="isbn" size="30" />4-7981-1070-1 <input type="button" value="送信" onclick="send()" /> <div id="result">XMLデータベース入門 NeoCore/XprioriでXMLDBを極める!</div> </form> </body>

    • ベストアンサー
    • AJAX
  • チェックボックスとテキストボックスを連動させたい

    JavaScriptでチェックボックスにチェックが入るとテキストボックス自動で数字の1が入る仕組みを作っています。 以下のソースまではかけたのですが 列はそれほどないのですがと行数が多数存在します。 ファンクションが一つで済む方法はありませんでしょうか。 またデータを配列で送信したいのですが配列ですと動きません。 是非教えて頂けると幸いです。 <SCRIPT LANGUAGE="JavaScript"> function check1(radio) { //チェックボックスにチェックが入った場合 if(radio.checked) { form = radio.form; form.data1[1].value = radio.value; form.data1[2].value = radio.value; form.data1[3].value = radio.value; form.data1[4].value = radio.value; }else{ //チェックが外された場合 form = radio.form; form.data1[1].value = ""; form.data1[2].value = ""; form.data1[3].value = ""; form.data1[4].value = ""; } } function check2(radio) { //チェックボックスにチェックが入った場合 if(radio.checked) { form = radio.form; form.val5.value = radio.value; form.val6.value = radio.value; form.val7.value = radio.value; form.val8.value = radio.value; }else{ //チェックが外された場合 form = radio.form; form.val5.value = ""; form.val6.value = ""; form.val7.value = ""; form.val8.value = ""; } } </SCRIPT> <FORM METHOD="POST"> <INPUT TYPE="checkbox" NAME="r" VALUE="1" onclick="check1(this)">チェック1<BR> <INPUT NAME="data1[1]" SIZE="1"> <INPUT NAME="data1[2]" SIZE="1"> <INPUT NAME="data1[3]" SIZE="1"> <INPUT NAME="data1[4]" SIZE="1"><br> <INPUT TYPE="checkbox" NAME="r" VALUE="1" onclick="check2(this)">チェック2<BR> <INPUT NAME="val5" SIZE="1"> <INPUT NAME="val6" SIZE="1"> <INPUT NAME="val7" SIZE="1"> <INPUT NAME="val8" SIZE="1"> </FORM>

専門家に質問してみよう