• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CGIで送受信するプログラムの作り方)

CGIで送受信するプログラムの作り方

このQ&Aのポイント
  • CGIで送受信するプログラムの作り方について説明します。
  • フォームの入力とPOST、GETの受け取り方を解説します。
  • C言語で作成する際の注意点や問題の解決方法を紹介します。

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

  • ベストアンサー
  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.2

たびたびすいません。 URLが空でないかぎりと書きましたがCGIを呼び出すからには空というのはありえないので、要するにURL情報にドメインやらパスやらCGIファイル名なんか入れてCGIを呼び出すと、リクエストメソッドはGETまたはPOSTのいずれかの値をとり、デフォルトではGETとなるのでした。 フォームタグで通常、「method="????"」でメソッドタイプを指定するのですが、省略されてsubmitされたり、直でCGI呼び出しがあったりすると、Webサーバ側では自動的にGETメソッドと判断されます。 正しい動作の例って //GET else if(!strcmp(method, "GET")){  qs = getenv("QUERY_STRING");  printf("Content-type: text/html\n\n");  if(strlen(qs) > 0){   printf("<html><head></head><body>\n");   printf("%s<br>\n", qs);   printf("</body></html>\n");  }else{   printf("<html><head></head><body>\n");   printf("%s<br>\n", "パラメータが無いよ。");   printf("</body></html>\n");  } } こんな感じ?

arupaka753
質問者

お礼

ご丁寧なご回答ありがとうございました。 解決しました。

その他の回答 (1)

  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.1

POSTでなく、URLが空でないかぎり、REQUEST_METHODはGETになってしまいます。 REQUEST_METHODがGETで、なおかつQUERY_STRINGが空のとき、なにもないと判定するといいと思います。

arupaka753
質問者

お礼

ありがとうございます!

関連するQ&A

専門家に質問してみよう