cgi例項--表單get與post示例
get方法:做乙個加法運算,需要接收兩個引數
檔案get.c如下:
#include #include int main(void)
else
printf("");
printf("");
printf("
\n");
printf("\n");
printf("\n");
return 0;
}
post方法:做乙個乘法運算,需要接收兩個引數
檔案post.c如下:
#include #include int main(void)
else
}printf("");
printf("");
printf("
\n");
printf("\n");
printf("\n");
fflush(stdout);
return 0;
}
再附上html測試檔案cgi.html:
method: get
please input two number:
method: post
please input two number:
幾點簡要說明:
(1) printf("content-type:text/html\n\n");
此行通過標準輸出將字串″contenttype:text/plain\n\n″傳送給web伺服器。它是乙個mime頭資訊,它告訴web伺服器隨後的輸出是以純ascii文字的形式。請注意在這個頭資訊中有兩個換行符,這是因為web伺服器需要在實際的文字資訊開始之前先看見乙個空行。
(2) data = getenv("query_string");
(3) sscanf(data,"a=%[^&]&b=%s",a,b)!=2
這個是關於sscanf函式的使用問題,自己可以上網搜尋一下,這裡不再詳述!
(4)atoi(a)+atoi(b)
atoi函式的功能是將字元型成整型,只有轉換之後才可以進行加法運算!
(5) lenstr=getenv("content_length");
web伺服器在呼叫使用post方法的cgi程式時設定此環境變數,它的文字值表示web伺服器傳送給cgi程式的輸入中的字元數目,因此需要使用函式atoi() 將此環境變數的值轉換成整數,並賦給變數len(下面有定義)。
(6) fgets(poststr,len+1,stdin);
這個是關於fgets函式的使用問題,自己可以上網搜尋一下,這裡不再詳述!
CGI程式設計入門 GET與POST示例
關於cgi的程式設計,我也還是新手!但只要懂c,則基於c的cgi程式設計就不會很難!下面就get和post方法的應用,做乙個小小的demo,給剛學習cgi程式設計的新手提供一點感性認識!get方法 做乙個加法運算,需要接收兩個引數 檔案get.c如下 include include int main...
POST與GET提交表單的區別
1 get 是用來從伺服器上獲得資料,而post 是用來向伺服器上傳遞資料。2 get 將表單中資料的按照variable value 的形式,新增到action 所指向的url 後面,並且兩者使用 連線,而各個變數之間使用 連線 post 是將表單中的資料放在form 的資料體中,按照變數和值相對...
表單提交 get 與post的區別
原理介紹 理論上說,get是從伺服器上請求資料,post是傳送資料到伺服器。事實上,get方法是把資料引數佇列 query string 加到乙個url上,值和表單是一一對應的。比如說,name john。在佇列裡,值和表單用乙個 符號分開,空格用 號替換,特 殊的符號轉換成十六進製制的 因為這一佇...