二、成績查詢系統介紹
乙個在www環境下的學生成績公布欄必將成為日後各類成績發布的主要手段,每位學生交將有自己的密碼,所以不必擔心成績上網之後的保密性。任何學生以任何形式上網進入本站點的成績查詢系統之後,只要輸入自己的系列、班別、學號及密碼,便可以利用這個學生績查詢系統查詢自己的成績,該設計思路與系統不僅適合各類校內部的成績發布,也適合於全國高考、統考等大規模考試的成績發布。本文介
紹的只是乙個功能單一的查詢系統,若需完善還需加入成績維護部分,由成績管理者進行內容維護,包括成績輸入、修改、刪除等功能。
三、html form格式部分
3.1 form輸放的分解
在unix系統上,cgi資訊是利用stdin/stdout方式傳輸的,所以若要編寫乙個c語言的cgi程式,就必須要了解如何解剖與擷取stdin的cgi資訊。當使用者提交乙個html form時,web瀏覽器首先對form中的資料以名字/值對的形式進行編碼,並傳送給web 伺服器,然後再由web伺服器傳遞給cgi程式,其格式如下:
name1=valuel&name2=value2&name3····
名字是form中定義的input,select等標置名字,值是使用者輸入或選擇的標值,在程式中將對其進行分析與解碼,將其分解成一組組的名字/值對,這個過程是通過在輸入流中查詢字元「=」與「&」來完成的,每當找到字元「=」,標誌著乙個form變數名字的結束,當找到字元「&」,標誌著乙個form變數值的結束。當名字/值對分解完之後,還須將輸入中的一些特殊字元轉換成相應的ascii字元,如需將「+」轉換成空格符,將一些特殊字元轉換成ascii字元,對以上分所分析的分解與轉換過程,在下面的程式中有詳細註明。
3.2html form檔案
成績查詢系統的html檔案p.htrnl
學生成績查詢系統
四、學生成績查詢cgi程式
該cgi程式分解、接收html form中提供的查詢條件,然後查詢出該學生的成績並返回。學生成績有兩個資料檔案,乙個是***sub dat,其中含有學生的各個科目,*** 表示系別,如計算機系的科目檔案是compsub dat,英語系的科目檔案是engsub.dat,無線電系科目檔案是elecsub.dat;另乙個資料檔案是***scoer.dat,該檔案中包含有每個學生的學號、密碼與成績,***表示系別,如計算機系的學生成績檔案是compscore.dat,同理,其他系的學生成績檔案按此原則以此類推。當學生輸入的學號及密碼符合資料檔案的內容時,就會顯示該學生的成績。
main(int argc,char*argv)
strcpy(filename1,"/score/setup/");
stucpy(filename2,"/xcore/data/");
if(strcmp(inputs[o].val,"計算機系/)==0
strcat(filename1,"compusb.dat");
strcat(filename2,"compscore.dat");
} if(strcmp(inputs[o].val,"英語系")==0
strcat(filenamel,"engsub.dat");
strcat(filename2,"engscore.dat");
} if(strcmp(inputs[o].val,"無線電系")==0
} strcat(filename1,"elecsub.dat");
strcat(filename2,"elecscore.dat");
} fp=fopen(filename1,"r");/*開啟檔案*/
kind=0;
while(fscanf(fp,"%s",subject[kind]!=eof
kind=kind+1;
fclose(fp);
fp1=fopen(filename2,"r");/*開啟檔案*/
allsum=0;
for(i=0;i<100;i++)
else
{ rank=1
for(i=o;i
");
pritf("\n查詢學生學號:%s
",
inputs[2].val);
printf("\n成績如下:
");
for(i=0;i五、結束語
本文以學竽成績查詢系統作為例項,詳細分析了用c語言進行cgi程式設計的方法與過程,隨著interet/intranet應用的深入,將web與多台資料庫聯接的需求也日益迫切,cgi可以使得web能夠能最低程式的複雜性與其後台資訊整合,成為一種支援多種型別的通用環境,但是由於在cgi方式中每執行一次互動都需啟動乙個外部程式,因此其在實時應用方面受到了限制,因而,web sener api及jocbc等應用方式也正在成熟。
利用CGI方式實現Web查詢
二 成績查詢系統介紹 乙個在環境下的學生成績公布欄必將成為日後各類成績發布的主要手段,每位學生交將有自己的密碼,所以不必擔心成績上網之後的保密性。任何學生以任何形式上網進入本站點的成績查詢系統之後,只要輸入自己的系列 班別 學號及密碼,便可以利用這個學生績查詢系統查詢自己的成績,該設計思路與系統不僅...
通過CGI實現在Web頁面上執行shell命令
使用命令安裝 yum install httpd命令安裝 安裝成功我們可以看到在 var 目錄下會產生乙個www的目錄,該目錄下還包含 cgi bin html 連個目錄 cgi bin目錄下主要存放cgi檔案 html目錄下主要存放html網頁檔案 此時可啟動httpd服務,檢視啟動後的狀態 伺服...
利用cgi 實現簡易網頁加法計算器功能
最近在看python web 開發的一些內容,正好看到了cgi,這裡做一些記錄 全名是通用閘道器介面,他可以由很多語言來實現,只要這個語言可以進行基本的輸入輸出即可。個人感覺是,只需要這個語言可以輸出 html 語言,就可以用來編寫 cgi。cgi 的基本處理流程 1 通過internet把使用者請...