Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:チェックボックスで得たデータを送信する場合)

チェックボックスで得たデータを送信する方法とは?

このQ&Aのポイント
  • CGIでデータの受け渡しを行い、決められたアドレスへ結果を送信するアンケートをつくっています。
  • 以前、チェックボックスで複数回答可とした場合の制限のかけ方をJavaScriptを用いた方法で教えてもらいましたが、これを利用して得た値をCGIで受け取りたいのですが、どうやって設定すればいいのでしょうか。
  • 「name」がそれぞれ名前が違う所でつまずいています。また<form method=post action='***.cgi'>~</form>と項目全体をくくればいいのでしょうか?参考までに以下のHTMLを付記いたします。

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

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

このHTMLでは「どのCGIにデータを送るか」が指定されていませんから、 おっしゃる通り<form>タグ内でファイル名を指定する必要があります。例えば <form method=post action="receive.cgi" name="myFORM"> とします。 また送信のトリガーが必要ですので、<form>~</form>内に以下を追加します。 <input type=submit value="送信"> これで送信ボタンが表示され、クリックするとCGIにデータが送信されます。 「CGIにデータを送信する方法」としては、以上です。 受け取った後の処理については、どのようなCGIかが分かりませんので 何とも言えませんが、「送信されたデータをCGIがどのように受け取るか」 を示す意味で、以下にサンプルのPerlスクリプトを書いておきます。 #!/usr/bin/perl read(STDIN, $QUERY, $ENV{'CONTENT_LENGTH'}); print "Content-type: text/html\n\n"; print $QUERY; これをreceive.cgiとして設置すると、受け取ったデータをそのまま 表示します。例えば1と2にチェックを入れて「送信」をクリックすると CB1=on&CB2=on と表示されました。receive.cgiがこのような文字列としてデータを 受け取っていることが分かると思います。 (ちなみに、この場合<form>タグ内のname=は使われないので、不要です。)

kajita
質問者

お礼

お礼を言うのが大変遅くなりました。回答は参考にさせて頂きました。まだまだ理想のアンケート機能を作るには頭を悩ませなくてはいけないようですが、がんばって作り上げていこうと思います。

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

関連するQ&A