嵌入式CGI開發

2021-06-22 03:56:14 字數 1409 閱讀 5924

cgi開發:cgi處理步驟1、通過internet把使用者的請求送往伺服器;2、伺服器接受請求並交由cgi處理;3、cgi把處理結果送回伺服器;4、伺服器將結構傳回給使用者。

從瀏覽器發給伺服器有兩種方法(method屬性):get和post。get方法是把資料打包放在環境變數query_string中作為url整體的一部分傳遞給伺服器。post做很多態別get的事情,但它分離傳遞資料給指令碼,程式通過標準輸入獲得資料,同樣的資料可以多次提交。當資料量超過1024時只能使用post來傳遞,由於get將資料直接放到url,資料的傳輸就變得不安全了。

下面以簡單的加法為例說明post提交操作

plus.html 

plusnum1:

plusnum2:

然後在/var/www/cgi-bin目錄下建立plus.c檔案並編譯成plus.cgi

plus.c	

#include#includeint main ()

else if (sscanf(data , 「m=%ld&n=%ld」, &m, &n) != 2)

printf(「error ! invalid data.」);

else

printf(「the product is %ld and %ld is %ld.」, m , n, m+n);

return 0;

}

新建collect.c

#include #include #define maxlen 80

#define extra 5

/* 4 for field name "data", 1 for "=" */

#define maxinput maxlen+extra+2

/* 1 for added line break, 1 for trailing nul */

#define datafile "../data/data.txt"

void unencode(char *src, char *last, char *dest)

else

*dest = *src;

//非特殊字元直接儲存

*dest = '/n';

*++dest = '/0';

//最後加上換行和字串結束符}

int main(void)

return 0;

}

gcc collect.c -o collect.cgi

cp collect.cgi /var/www/cgi-bin/

在瀏覽器中輸入:

192.168.75.1/html/plus.html

嵌入式CGI開發之旅 5

原創 嵌入式cgi開發之旅 5 發表於 2009 9 1 20 11 19 用cgic開發c語言的cgi程式 用cgic 庫來開發cgi 程式 cgic 是專門為 cgi開發的乙個 ansi c 庫,封裝了一些c語言 cgi程式設計常用的操作,以及一些字串和環境變數的處理,伺服器提交以後,cgic ...

嵌入式CGI開發之旅 11

原創 嵌入式cgi開發之旅 11 發表於 2009 9 3 20 18 14 實驗 六 核取方塊組 核取方塊是一種多選框,一次可以選擇多個選項,核取方塊組是多個核取方塊擁有同乙個 name 屬性。1 修改 mycgictest.html 增加一組核取方塊按鈕組,增加到剛才的單選框組下面 核取方塊組 ...

嵌入式CGI開發之旅 9

實驗 四 文字框 文字框允許使用者輸入多行文字,這個通常用來接收較多的使用者輸入,使用者可以使用空格和回車換行等,因為輸入的資料可能超過 1024 位元組,這個表單輸入域的提交一般用 post 方法。1 修改 mycgictest.html 增加乙個文字框,加在使用者輸入名字的下面,如下 所示 yo...