學(xué)生成績(jī)管理項(xiàng)目總體設(shè)計(jì)和說(shuō)明----可作為項(xiàng)目開(kāi)發(fā)整體過(guò)程和論文參考_第1頁(yè)
學(xué)生成績(jī)管理項(xiàng)目總體設(shè)計(jì)和說(shuō)明----可作為項(xiàng)目開(kāi)發(fā)整體過(guò)程和論文參考_第2頁(yè)
學(xué)生成績(jī)管理項(xiàng)目總體設(shè)計(jì)和說(shuō)明----可作為項(xiàng)目開(kāi)發(fā)整體過(guò)程和論文參考_第3頁(yè)
學(xué)生成績(jī)管理項(xiàng)目總體設(shè)計(jì)和說(shuō)明----可作為項(xiàng)目開(kāi)發(fā)整體過(guò)程和論文參考_第4頁(yè)
學(xué)生成績(jī)管理項(xiàng)目總體設(shè)計(jì)和說(shuō)明----可作為項(xiàng)目開(kāi)發(fā)整體過(guò)程和論文參考_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、項(xiàng)目:學(xué)生成績(jī)管理系統(tǒng)前幾章我們簡(jiǎn)要介紹了課程設(shè)計(jì)的基礎(chǔ)知識(shí)和編碼規(guī)則及原則。為了將學(xué)過(guò)的知識(shí)綜合運(yùn)用起來(lái),作為課程設(shè)計(jì)舉例,本章設(shè)計(jì)一個(gè)功能相對(duì)簡(jiǎn)單但實(shí)用的應(yīng)用程序案例。將通過(guò)對(duì)學(xué)生成績(jī)查詢系統(tǒng)程序的編制,來(lái)向讀者展示課程設(shè)計(jì)中應(yīng)用程序的編寫(xiě)方法。該案例是一個(gè)簡(jiǎn)單的成績(jī)查詢系統(tǒng)。管理員可以添加、修改和刪除學(xué)生課程成績(jī)信息,學(xué)生可以查詢相關(guān)課程的成績(jī)。本例所講的功能比較少。有興趣的讀者可以在此基礎(chǔ)上自行設(shè)計(jì),增加一些其他的功能,例如,學(xué)生登錄后,可以修改自己的登錄密碼,可以查閱自己的檔案信息,可以設(shè)置管理員權(quán)限,可以對(duì)學(xué)期、課程進(jìn)行添加、修改和刪除等。4.1 系統(tǒng)分析 隨著社會(huì)信息量的與日俱增

2、,學(xué)校需要有一個(gè)很好的學(xué)生成績(jī)管理系統(tǒng),以方便對(duì)學(xué)生的成績(jī)進(jìn)行有效的管理。系統(tǒng)應(yīng)具有既方便對(duì)學(xué)生成績(jī)的管理,也方便學(xué)生對(duì)自己的成績(jī)和獲得的學(xué)分進(jìn)行查詢的功能。 本案例設(shè)計(jì)實(shí)現(xiàn)的“學(xué)生成績(jī)管理系統(tǒng)”,具有數(shù)據(jù)操作方便、高效、迅速等優(yōu)點(diǎn)。該軟件采用功能強(qiáng)大的數(shù)據(jù)庫(kù)軟件開(kāi)發(fā)工具進(jìn)行開(kāi)發(fā),具有很好的可移植性。同時(shí),可通過(guò)訪問(wèn)權(quán)限控制功能,確保數(shù)據(jù)的安全性。使用該系統(tǒng)既能把管理人員從繁瑣的數(shù)據(jù)計(jì)算中解脫出來(lái),使其有更多的精力從事教務(wù)管理政策的研究實(shí)施,教學(xué)計(jì)劃的制定執(zhí)行和教學(xué)質(zhì)量的監(jiān)督檢查,從而全面提高教學(xué)質(zhì)量,同時(shí)也能減輕任課教師的負(fù)擔(dān),使其有更多的精力投入到教學(xué)和科研中,其最主要的功能是能夠便于學(xué)校

3、的管理。 “學(xué)生成績(jī)管理系統(tǒng)”是以學(xué)生成績(jī)數(shù)據(jù)為主的管理,其數(shù)據(jù)庫(kù)的建立、健全就是關(guān)鍵。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整性和一致性。同時(shí),合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)也有利于程序的實(shí)現(xiàn)。4.1.1 系統(tǒng)現(xiàn)狀 學(xué)生成績(jī)管理系統(tǒng)對(duì)學(xué)校進(jìn)行學(xué)生課程成績(jī)的管理和發(fā)布是非常重要的?,F(xiàn)在許多學(xué)校都有自己的成績(jī)管理系統(tǒng)。學(xué)生可以在校園網(wǎng)上或假期通過(guò)因特網(wǎng)輸入自己的學(xué)號(hào)和密碼就能查詢自己的學(xué)習(xí)成績(jī)。通常在成績(jī)查詢系統(tǒng)中會(huì)詳細(xì)地記錄學(xué)生的課程成績(jī),這樣即方便了學(xué)生,同時(shí)也方便了操作員的成績(jī)錄入和成績(jī)修改。 成績(jī)管理系統(tǒng)是校園網(wǎng)中最常用的系統(tǒng),它的一個(gè)基本作用就是為學(xué)校提供學(xué)生課程信息發(fā)布的平臺(tái)。使

4、用ASP技術(shù)可以動(dòng)態(tài)地生成成績(jī)的靜態(tài)頁(yè)頁(yè)面,可以使課程成績(jī)的發(fā)布和管理變得很輕松。管理員只需輸入課程成績(jī),系統(tǒng)將自動(dòng)生成對(duì)應(yīng)的網(wǎng)頁(yè)。而使用SQL Server數(shù)據(jù)庫(kù),將減輕維護(hù)人員的工作量,使系統(tǒng)便于維護(hù)和管理。4.1.2 用戶需求 成績(jī)管理系統(tǒng)可以實(shí)現(xiàn)學(xué)生課程信息管理。其操作簡(jiǎn)單安全,從而有效地提高了工作效率和質(zhì)量。成績(jī)查詢系統(tǒng)可以實(shí)現(xiàn)以下幾個(gè)方面的功能:l 為學(xué)校提供學(xué)生課程成績(jī)發(fā)布的平臺(tái)。l 為學(xué)校中的每個(gè)學(xué)生設(shè)置相應(yīng)的登錄學(xué)號(hào)和密碼。l 學(xué)生通過(guò)輸入自己的學(xué)號(hào)和密碼正確登錄后即可進(jìn)入該系統(tǒng)。l 學(xué)生可以按學(xué)期、課程名稱(chēng)等來(lái)查詢自己的課程成績(jī)。l 管理員可以按班級(jí)或按學(xué)生來(lái)登記學(xué)生成績(jī)。

5、l 管理員可以編輯和刪除學(xué)生的課程成績(jī)。l 系統(tǒng)具有設(shè)置管理員權(quán)限等功能??傊?,通過(guò)本系統(tǒng)的開(kāi)發(fā),可以實(shí)現(xiàn)學(xué)生成績(jī)的各類(lèi)查詢功能、學(xué)生成績(jī)發(fā)布平臺(tái)、管理員輸入學(xué)生成績(jī)、管理員修改和刪除學(xué)生課程成績(jī)等功能。4.2 系統(tǒng)概要設(shè)計(jì)根據(jù)不同的用戶,本章所介紹的成績(jī)查詢系統(tǒng)可以分為以下兩個(gè)功能區(qū)。(1) 學(xué)生功能區(qū) 學(xué)生輸入學(xué)號(hào)和密碼正常登錄該系統(tǒng)后,可以進(jìn)行如下操作。l 成績(jī)查詢:學(xué)生進(jìn)入該系統(tǒng)后可查詢出指定學(xué)期的所有課程成績(jī)。l 退出系統(tǒng):學(xué)生查詢完成績(jī)后可以退出登錄狀態(tài)。(2) 管理員功能區(qū)管理員通過(guò)輸入的賬號(hào)和密碼正常登錄該系統(tǒng)后,管理員可以進(jìn)行如下操作。l 管理員可以查詢出指定班號(hào)、指定科目的

6、所有成績(jī);可以查詢出指定學(xué)號(hào)、指定科目的所有成績(jī)。l 管理員可以以班級(jí)或?qū)W生為單位添加、修改和刪除學(xué)生課程成績(jī)。管理員操作完畢后可以退出登錄狀態(tài)。數(shù)據(jù)層設(shè)計(jì)數(shù)據(jù)服務(wù)配置系統(tǒng)信息表示層應(yīng)用層用戶接口層圖4.1 系統(tǒng)總體框圖 系統(tǒng)構(gòu)架該系統(tǒng)設(shè)計(jì)流程是:首先創(chuàng)建成績(jī)查詢系統(tǒng)數(shù)據(jù)庫(kù),再次設(shè)計(jì)該系統(tǒng)的功能,然后編寫(xiě)源代碼實(shí)現(xiàn)系統(tǒng)功能,并在表示層制作與用戶對(duì)話界面;將系統(tǒng)上傳到Intemet進(jìn)入應(yīng)用層后,用戶使用該系統(tǒng)。該流程對(duì)應(yīng)的系統(tǒng)構(gòu)架為:數(shù)據(jù)層設(shè)計(jì)數(shù)據(jù)服務(wù)配置系統(tǒng)信息表示層應(yīng)用層用戶接口層。系統(tǒng)總體構(gòu)架如圖4.1所示。 系統(tǒng)功能模塊設(shè)計(jì) 系統(tǒng)主要功能如下所示:l 管理員管理功能,管理員負(fù)責(zé)整個(gè)系統(tǒng)的

7、后臺(tái)管理。l 管理員添加、修改和刪除學(xué)生成績(jī)功能。l 學(xué)生查詢指定學(xué)期課程成績(jī)功能。l 管理員/學(xué)生退出系統(tǒng)功能。系統(tǒng)主要分為三大功能模塊如下:(1) 公用模塊此模塊屬于系統(tǒng)公用部分,系統(tǒng)中任何頁(yè)面需要用此模塊時(shí)直接調(diào)用即可。此模塊包括數(shù)據(jù)庫(kù)連接文件、層疊樣式表文件。此模塊負(fù)責(zé)與數(shù)據(jù)庫(kù)的連接和定義頁(yè)面風(fēng)格。可以將這些公用的代碼放在一個(gè)文件中,這樣即可以減少源代碼,也可以使整個(gè)系統(tǒng)緊湊有序。(2) 前臺(tái)系統(tǒng)功能模塊此模塊實(shí)現(xiàn)了學(xué)生功能區(qū)的所有功能,由學(xué)生登錄模塊、學(xué)生查分模塊和退出系統(tǒng)模塊組成。這三個(gè)模塊的功能如下:l 學(xué)生登錄模塊:此模塊包括學(xué)生登錄和檢查學(xué)生登錄信息功能。此模塊負(fù)責(zé)根據(jù)學(xué)生所

8、輸入的學(xué)號(hào)和密碼判斷該用戶是否合法,以及具有哪些操作權(quán)限,并根據(jù)不同的權(quán)限,返回包含不同模塊的頁(yè)面。l 學(xué)生查分模塊:此模塊包括學(xué)生成績(jī)查詢頁(yè)。學(xué)生正常登錄該系統(tǒng)后,可以查詢出指定學(xué)期的所有課程成績(jī)。l 退出系統(tǒng)模塊:此模塊包括退出系統(tǒng)頁(yè)。此模塊在該系統(tǒng)中對(duì)學(xué)生用戶/管理員類(lèi)用戶開(kāi)放,負(fù)責(zé)結(jié)束學(xué)生用戶/管理員類(lèi)用戶在登錄模塊所獲得的Session變量,退出本系統(tǒng),返回到系統(tǒng)首頁(yè)。前臺(tái)系統(tǒng)功能模塊圖如圖4.2所示。成績(jī)管理系統(tǒng)前臺(tái)學(xué)生登錄模塊學(xué)生查分模塊系統(tǒng)退出模塊學(xué)生登錄檢查學(xué)生登錄信息學(xué)生查分模塊學(xué)生退出系統(tǒng) 圖4.2 前臺(tái)系統(tǒng)功能模塊圖 (3) 后臺(tái)系統(tǒng)功能模塊此模塊實(shí)現(xiàn)了管理員功能區(qū)的所

9、有功能,由管理員登錄模塊、課程成績(jī)管理模塊和退出系統(tǒng)模塊組成。這三個(gè)模塊的功能如下:l 管理員登錄模塊:此模塊包括管理員登錄和檢查管理員登錄信息功能。此模塊負(fù) 責(zé)根據(jù)管理員所輸入的賬號(hào)和密碼判斷該用戶是否合法,以及具有哪些操作權(quán)限,并根據(jù)不同的權(quán)限,返回包含不同模塊的頁(yè)面。l 課程成績(jī)管理模塊:此模塊包括管理員添加、修改和刪除課程成績(jī)功能。此模塊只對(duì)管理員類(lèi)用戶開(kāi)放。系統(tǒng)管理員登錄后,進(jìn)入該模塊,在該模塊中可以看到操作條件選擇頁(yè)分為課程成績(jī)添加和課程成績(jī)修改,單擊它們的鏈接即可進(jìn)入相應(yīng)的頁(yè)面。l 退出系統(tǒng)模塊:此模塊與前臺(tái)管理模塊中的退出系統(tǒng)模塊是一樣的。后臺(tái)系統(tǒng)功能模塊圖如圖4.3所示。成績(jī)

10、管理系統(tǒng)后臺(tái)學(xué)生登錄模塊學(xué)生查分模塊系統(tǒng)退出模塊學(xué)生登錄檢查管理員登錄信息學(xué)生查分模塊管理員退出系統(tǒng)修改課程成績(jī)刪除課程成績(jī) 圖4.3 后臺(tái)系統(tǒng)功能模塊圖 系統(tǒng)總體設(shè)計(jì)系統(tǒng)總體設(shè)計(jì)是指關(guān)于對(duì)象系統(tǒng)的總體機(jī)能以及和其他系統(tǒng)的相關(guān)方面的設(shè)計(jì)。也包括基本環(huán)境要求,用戶界面的基本要求等。1 總體結(jié)構(gòu)成績(jī)管理系統(tǒng),主要是通過(guò)l5個(gè)頁(yè)面來(lái)實(shí)現(xiàn)學(xué)生功能區(qū)和管理員功能區(qū)。各個(gè)頁(yè)面之問(wèn)的關(guān)系如下。(1) 公用模塊數(shù)據(jù)庫(kù)連接頁(yè)面Conn.asp、層疊樣式表頁(yè)面Css.css,其他頁(yè)面引用它們時(shí)直接調(diào)用即可。(2) 前臺(tái)系統(tǒng)結(jié)構(gòu)成績(jī)管理系統(tǒng)的前臺(tái)系統(tǒng)結(jié)構(gòu)流程如圖4.4所示。是系統(tǒng)首頁(yè)Default.htm成功學(xué)生成

11、績(jī)查詢頁(yè)Seek.asp退出系統(tǒng)Logout.asp否 圖4.4 前臺(tái)系統(tǒng)結(jié)構(gòu)圖(3) 后臺(tái)系統(tǒng)結(jié)構(gòu)成績(jī)管理系統(tǒng)的后臺(tái)系統(tǒng)結(jié)構(gòu)流程如圖4.5所示。是管理員登錄頁(yè)Login.asp成功管理員管理頁(yè)Admin.asp否添加記錄框架頁(yè)AdminAdd.htm添加記錄查詢頁(yè)Add.asp添加記錄頁(yè)DoAdd.asp添加記錄更新頁(yè)UpdateAdd.asp管理記錄框架頁(yè)AdminManager.htm管理記錄查詢頁(yè)Add.asp管理記錄頁(yè)DoAdd.asp管理記錄更新頁(yè)UpdateAdd.asp退出系統(tǒng)Logout.asp 圖4.5 前臺(tái)系統(tǒng)結(jié)構(gòu)圖2 各頁(yè)面功能分配該系統(tǒng)頁(yè)面功能如下:l Conn.as

12、p:數(shù)據(jù)庫(kù)連接的基本信息。l Css.css:層疊樣式表文件,定義頁(yè)面風(fēng)格。l Default.asp:成績(jī)查詢系統(tǒng)首頁(yè),也是學(xué)生登錄頁(yè),用于學(xué)生登錄。l Seek.asp:查詢并顯示學(xué)生課程成績(jī)。l Login.asp:管理員管理頁(yè),用于管理員登錄。l AddminAdd.htm:課程成績(jī)添加框架頁(yè)。l Add.asp:用于管理員查詢需要添加成績(jī)的學(xué)生信息和課程信息。訪問(wèn)成績(jī)查詢系統(tǒng)學(xué)生登錄成功查詢課程成績(jī)退出系統(tǒng)否是圖4.6 學(xué)生查分流程圖l DoAdd.asp:用于管理員添加課程成績(jī)。l UpdateAdd.asp:用于保存添加的課程成績(jī)。l AdminManager.htm:課程成績(jī)管

13、理框架頁(yè)。l Manager.asp:用于管理員查詢需要管理的學(xué)生信息和課程信息。l DoManager.asp:用于修改或刪除課程成績(jī)。l UpdateManager.asp:用于更新課程成績(jī)。l Logout.asp:管理員/學(xué)生用戶退出已登錄狀態(tài),并返回到系統(tǒng)首頁(yè)。3 學(xué)生查分模塊工作流程學(xué)生查分模塊工作流程如圖4.6所示。4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫(kù)管理系統(tǒng)上,設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)和建立數(shù)據(jù)庫(kù)的過(guò)程。 設(shè)計(jì)思想系統(tǒng)采用SQL Server 2005作為后臺(tái)數(shù)據(jù)庫(kù)。通過(guò)分析要在數(shù)據(jù)庫(kù)中存儲(chǔ)以下基本信息。l 管理員信息:管理員ID號(hào)、管理員賬號(hào)、管理員密碼

14、。l 學(xué)生信息:學(xué)生學(xué)號(hào)、學(xué)生姓名、學(xué)生密碼。l 課程信息:課程編號(hào)、課程名稱(chēng)。l 成績(jī)信息:成績(jī)D號(hào)、學(xué)生學(xué)號(hào)、課程編號(hào)、課程成績(jī)、備注信息、學(xué)期名稱(chēng)。l 學(xué)期信息:學(xué)期D號(hào)、學(xué)期名稱(chēng)。通過(guò)以上的分析該系統(tǒng)需要?jiǎng)?chuàng)建五個(gè)數(shù)據(jù)表如下所示。l 管理員信息表Admin:用于存儲(chǔ)管理員ID號(hào)、管理員賬號(hào)、管理員密碼。l 學(xué)生信息表Student:用于存儲(chǔ)學(xué)生學(xué)號(hào)、學(xué)生姓名、學(xué)生密碼。l 課程信息表Course:用于存儲(chǔ)課程編號(hào)、課程名稱(chēng)。l 成績(jī)信息表Sreport:用于存儲(chǔ)成績(jī)ID號(hào)、學(xué)生學(xué)號(hào)、課程編號(hào)、課程成績(jī)、備注信息、學(xué)期名稱(chēng)。l 學(xué)期信息表Term:用于存儲(chǔ)學(xué)期ID號(hào)、學(xué)期名稱(chēng)。上述五個(gè)數(shù)據(jù)

15、表的連接關(guān)系如下所示。l 學(xué)生信息表Student與成績(jī)信息表Sreport通過(guò)學(xué)生學(xué)號(hào)建立連接關(guān)系。l 程信息表Course與成績(jī)信息表Sreport通過(guò)課程編號(hào)建立連接關(guān)系。l 學(xué)期信息表Term與成績(jī)信息表Sreport通過(guò)學(xué)期名稱(chēng)建立連接關(guān)系。其中管理員信息表Admin是獨(dú)立的,與其它數(shù)據(jù)表沒(méi)有關(guān)聯(lián)。學(xué)生信息表Student與課程信息表Course沒(méi)有直接的關(guān)系,是通過(guò)成績(jī)信息表Sreport建立關(guān)聯(lián)的。4.3.2 數(shù)據(jù)表結(jié)構(gòu)使用SQL Server 2005新建一個(gè)數(shù)據(jù)庫(kù),將其命名為seekscore。seekscore數(shù)據(jù)庫(kù)中包含的數(shù)據(jù)表及其相應(yīng)功能如表4-1所示。表4-1數(shù)據(jù)表及

16、其功能數(shù)據(jù)表功能Admin存放管理員基本信息Student存放學(xué)生基本信息Course存放課程基本信息Sreport存放成績(jī)基本信息Term存放學(xué)期基本信息1 管理員信息表Admin該信息表用于存儲(chǔ)管理員的基本信息,包括管理員ID號(hào)(id)、管理員賬號(hào)(name)、管理員密碼(pwd)。在已創(chuàng)建的數(shù)據(jù)庫(kù)seekscore中,創(chuàng)建一個(gè)名為Admin的數(shù)據(jù)表,并向表中添加字段如表4-2所示。表4-2 管理員信息表 Admin字段名數(shù)據(jù)類(lèi)型長(zhǎng)度意義說(shuō)明idint4管理員ID號(hào)設(shè)為主鍵且自動(dòng)編號(hào)namevarchar20管理員賬號(hào)不允許為空pwdvarchar20管理員密碼不允許為空2 學(xué)生信息表 S

17、tudent該信息表用于存儲(chǔ)學(xué)生的基本信息,包括學(xué)生學(xué)號(hào)(id)、學(xué)生姓名(name)、學(xué)生密碼(pwd)。在已創(chuàng)建的數(shù)據(jù)庫(kù)seekscore中,創(chuàng)建一個(gè)名為Student的數(shù)據(jù)表,并向表中添加字段如表4-3所示。表4-3 學(xué)生信息表 Student字段名數(shù)據(jù)類(lèi)型長(zhǎng)度意義說(shuō)明idvarchar50學(xué)生學(xué)號(hào)設(shè)為主鍵namevarchar50學(xué)生姓名不允許為空pwdvarchar20學(xué)生密碼不允許為空3 課程信息表 Course該信息表用于存儲(chǔ)課程的基本信息,包括課程編號(hào)(id)、課程名稱(chēng)(title)。在已創(chuàng)建的數(shù)據(jù)庫(kù)seekscore中,創(chuàng)建一個(gè)名為Course的數(shù)據(jù)表,并向表中添加字段如表4

18、-4所示。表4-4 課程信息表 Course字段名數(shù)據(jù)類(lèi)型長(zhǎng)度意義說(shuō)明idvarchar50課程編號(hào)設(shè)為主鍵titlevarchar50課程名稱(chēng)不允許為空4 成績(jī)信息表 Sreport該信息表用于存儲(chǔ)課程成績(jī)的基本信息,包括學(xué)生成績(jī)ID號(hào)(id)、學(xué)生學(xué)號(hào)(stid)、課程編號(hào)(coid)。課程成績(jī)(mark)、備注信息(note)、學(xué)期名稱(chēng)(term)。在已創(chuàng)建的數(shù)據(jù)庫(kù)seekscore中,創(chuàng)建一個(gè)名為Sreport的數(shù)據(jù)表,并向表中添加字段如表4-5所示。表4-5 成績(jī)信息表 Sreport字段名數(shù)據(jù)類(lèi)型長(zhǎng)度意義說(shuō)明idint4成績(jī)ID號(hào)設(shè)為主鍵且自動(dòng)編號(hào)stidvarchar50學(xué)生學(xué)號(hào)

19、不允許為空coidvarchar50課程編號(hào)不允許為空markvarchar50課程成績(jī)不允許為空notevarchar100備注信息允許為空termvarchar50學(xué)期名稱(chēng)允許為空5 學(xué)期信息表 Term該信息表用于存儲(chǔ)學(xué)期的基本信息,包括學(xué)期ID號(hào)(id)、學(xué)期名稱(chēng)(title)。在已創(chuàng)建的數(shù)據(jù)庫(kù)seekscore中,創(chuàng)建一個(gè)名為T(mén)erm的數(shù)據(jù)表,并向表中添加字段如表4-6所示。表4-6 學(xué)期信息表 Term字段名數(shù)據(jù)類(lèi)型長(zhǎng)度意義說(shuō)明idint4學(xué)期ID號(hào)設(shè)為主鍵且自動(dòng)編號(hào)titlevarchar50學(xué)期名稱(chēng)允許為空4.4 公用模塊為了使成績(jī)查詢系統(tǒng)的結(jié)構(gòu)清晰、代碼規(guī)范,這里把系統(tǒng)中重復(fù)

20、使用的代碼寫(xiě)在一個(gè)頁(yè)面內(nèi),當(dāng)需要的時(shí)候直接加載進(jìn)來(lái)即可。該系統(tǒng)的公用模塊包括一下界面。 數(shù)據(jù)庫(kù)連接頁(yè)Conn.asp系統(tǒng)中幾乎所有頁(yè)面都要進(jìn)行數(shù)據(jù)庫(kù)的連接,把數(shù)據(jù)庫(kù)連接代碼保存在頁(yè)面Conn.asp中,可以避免重復(fù)編程。Conn.asp的代碼如下所示。在文件中引用此文件時(shí),把該文件作為頭文件直接調(diào)用即可,代碼如下所示。頁(yè)面設(shè)計(jì)效果:由于該項(xiàng)頁(yè)面沒(méi)有任何HTML代碼,也沒(méi)有任何ASP的輸出顯示代碼,所以瀏覽該頁(yè)面時(shí)沒(méi)有任何效果。 層疊樣式文件Css.css為了使成績(jī)查詢系統(tǒng)的界面美觀、風(fēng)格統(tǒng)一、修改方便,所以創(chuàng)建一個(gè)層疊樣式表文件Css.css,對(duì)成績(jī)查詢系統(tǒng)所有網(wǎng)頁(yè)文件中所標(biāo)注的屬性實(shí)行統(tǒng)一控

21、制。Css.css的代碼如下所示:編輯頁(yè)面代碼時(shí),在每個(gè)頁(yè)面的和標(biāo)記之間包含該樣式表文件,就可以起到統(tǒng)一頁(yè)面風(fēng)格的作用,具體代碼如下所示:頁(yè)面設(shè)計(jì)效果:由于該頁(yè)面沒(méi)有任何HTML代碼,也沒(méi)有任何ASP的輸出顯示代碼,所以瀏覽該頁(yè)面時(shí)沒(méi)有任何效果。4.5 學(xué)生登錄模塊此模塊包括學(xué)生登錄和檢查學(xué)生登錄信息。此模塊負(fù)責(zé)根據(jù)學(xué)生所輸入的學(xué)號(hào)和密碼判斷該用戶是否合法,以及具有哪些操作權(quán)限,并根據(jù)不同的權(quán)限,返回包含不同模塊的頁(yè)面。 系統(tǒng)首頁(yè)Default.aspDefault.asp是系統(tǒng)首頁(yè),用于學(xué)生登錄。學(xué)生必須正確登錄后,才能進(jìn)入該系統(tǒng)查詢成績(jī)。學(xué)生進(jìn)入該頁(yè)面,在該頁(yè)面輸入學(xué)號(hào)和密碼,單擊“登錄”

22、按鈕即可。頁(yè)面顯示效果如圖4.7所示。圖4.7的頁(yè)面控件及功能如表4-7所示。圖4-7 系統(tǒng)首頁(yè)頁(yè)面控件及功能如表4-7所示表4-系統(tǒng)首頁(yè)頁(yè)面控件及功能對(duì)象功能表格用于控制頁(yè)面顯示信息位置表單名稱(chēng)為form1,提交目標(biāo)網(wǎng)頁(yè)為Default.asp,數(shù)據(jù)采用隱式傳遞方式文本框名稱(chēng)為number,用于輸入學(xué)生學(xué)號(hào)密碼框名稱(chēng)為pwd,用于輸入學(xué)生密碼按鈕單擊“登錄”按鈕,提交表單按鈕單擊“重置”按鈕,清空文本框和密碼框內(nèi)容4.5.2 頁(yè)面代碼分析下面介紹Default.asp的主要代碼。頁(yè)面代碼分析如下所示。 1 創(chuàng)建網(wǎng)頁(yè)表單該頁(yè)面設(shè)計(jì):利用網(wǎng)頁(yè)表單把學(xué)生輸入的學(xué)號(hào)和密碼提交給目標(biāo)網(wǎng)頁(yè),由目標(biāo)網(wǎng)頁(yè)驗(yàn)

23、證用戶輸入的信息。頁(yè)面首先創(chuàng)建網(wǎng)頁(yè)表單并對(duì)表單控件進(jìn)行設(shè)置。 代碼如下所示。 學(xué)生登錄 學(xué)號(hào):  密碼:   轉(zhuǎn)入管理員登錄頁(yè)面 2 接收網(wǎng)頁(yè)表單傳遞過(guò)來(lái)的數(shù)據(jù)并進(jìn)行校驗(yàn)頁(yè)面設(shè)計(jì):定義ChkLogin()過(guò)程,用來(lái)檢驗(yàn)學(xué)生的登錄信息。首先根據(jù)頁(yè)面返回的action值來(lái)調(diào)用相應(yīng)的過(guò)程,頁(yè)面接收傳遞過(guò)來(lái)的表單數(shù)據(jù),然后判斷登錄學(xué)號(hào)和密碼的合法性。若未通過(guò)密碼和學(xué)號(hào)驗(yàn)證,則給出相應(yīng)的提示信息,若通過(guò)了登錄驗(yàn)證,則生成Session變量name(用戶名)并跳轉(zhuǎn)到學(xué)生成績(jī)查詢頁(yè)Seek.asp。代碼如下所示。根據(jù)頁(yè)面返回的action消息值為ChkLogin,來(lái)調(diào)用ChkLogin過(guò)

24、程 If Request(”action”)=”ChkLogin” Then Call ChkLogin() End If %定義ChkLogin()過(guò)程用來(lái)檢查學(xué)生的登錄信息,成功則跳轉(zhuǎn)到Seek.asp,失敗給出相應(yīng)錯(cuò)誤提示Sub ChkLogin() Dim number Dim pwd 獲取傳遞過(guò)來(lái)的表單數(shù)據(jù) number=Trim(Request.Form(”number”) 獲取學(xué)生登錄學(xué)號(hào) pwd=Trim(Request.Form(”pwd”) 獲取學(xué)生登錄密碼 判斷登錄學(xué)號(hào)與密碼的合法牲 If number=”O(jiān)r pwd=”Then 如果密碼或?qū)W號(hào)為空,則提示請(qǐng)輸入學(xué)號(hào)或密

25、碼! Response.Write ”alert (請(qǐng)輸入學(xué)號(hào)或密碼!);history.Go(-1);” Response.End Else Set Rs=Server.CreateObject(”ADODB.Recordset”) 創(chuàng)建記錄對(duì)象 以接收的學(xué)生學(xué)號(hào)為條件,把學(xué)生信息從學(xué)生信息表中取出來(lái) Sql=”Select * From Student Where id=”&number&” Rs.Open Sql,conn,3,3 把取出的信息放在記錄集對(duì)象中 如果記錄集對(duì)象中無(wú)此學(xué)號(hào)記錄,則提示”學(xué)號(hào)錯(cuò)誤,請(qǐng)重新輸入!” If Rs.EOF Or Rs.BOF Then Respons

26、.Write”alert(學(xué)號(hào)錯(cuò)誤,請(qǐng)重新輸入!);” Response.End 如果學(xué)號(hào)和密碼正確,剛生成Session變量 ElseIf number=Rs(”id”) And pwd=Rs(”pwd”) Then Session(”name”)=Rs(”name”) Session(”id”)=Rs(”id”) Response.Redirect ”Seek.asp” Else 如果學(xué)號(hào)正確但密碼錯(cuò)誤,則提示”密碼錯(cuò)誤,請(qǐng)重新輸入!” Response.Write ”alert(密碼錯(cuò)誤,請(qǐng)重新輸入!);History.go(-1);” Response.end End If End I

27、f Rs.Close Set Rs=nothing Conn.Close Set Conn=nothing End Sub %說(shuō)明:上頁(yè)表單遞交時(shí),采用的是隱式傳遞post,所以在程序清單中首先使用Request.Form()方法取得表單傳遞過(guò)來(lái)的數(shù)據(jù),并把數(shù)據(jù)賦值給所定義的變量。然后根據(jù)取得的值進(jìn)行驗(yàn)證:首先驗(yàn)證用戶輸入的信息是否與數(shù)據(jù)庫(kù)中的信息匹配,若驗(yàn)證失敗,給出相應(yīng)的提示信息;若驗(yàn)證成功,則生成Session變量并進(jìn)入成績(jī)查詢系統(tǒng)前臺(tái)。在此用到了Session變量,為了可以在不同的網(wǎng)頁(yè)中共享,用戶只需要登錄一次,其信息將全部保存在Session變量中;當(dāng)用戶退出系統(tǒng)時(shí),Session變

28、量保存的信息釋放并清空。4.6學(xué)生查分模塊 此模塊包括學(xué)生成績(jī)查詢頁(yè)。學(xué)生正常登錄該系統(tǒng)后,可以查詢出指定學(xué)期的所有課程成績(jī)。4.6.1 學(xué)生成績(jī)查詢頁(yè)SeekaspSeek.asp是學(xué)生成績(jī)查詢頁(yè),用于查詢并顯示學(xué)生課程成績(jī)。當(dāng)學(xué)生成功登錄后,系統(tǒng)會(huì)自動(dòng)跳轉(zhuǎn)到該頁(yè)面,學(xué)生在該頁(yè)面可以根據(jù)學(xué)期名稱(chēng)查詢?cè)搶W(xué)期的所有課程成績(jī)。頁(yè)面顯示效果圖如圖4.8所示。圖4.8 學(xué)生成績(jī)查詢頁(yè)顯示效果圖圖4.8的頁(yè)面控件及功能如表4-8所示。表4-8學(xué)生成績(jī)查詢頁(yè)頁(yè)面控件及功能對(duì)象功能表格用于控制頁(yè)面顯示信息位置表單名稱(chēng)為form1,提交目標(biāo)網(wǎng)頁(yè)為Seek.asp,數(shù)據(jù)采用隱式傳遞方式下拉列表框名稱(chēng)為term,

29、用于選擇學(xué)期按鈕單擊“查詢”按鈕,提交表單按鈕單擊“重設(shè)”按鈕,清空下拉列表框內(nèi)容 頁(yè)面代碼分析下面介紹Seek.asp的主要代碼,其中頁(yè)面代碼分析如下所示。 1 創(chuàng)建網(wǎng)頁(yè)表單頁(yè)面設(shè)計(jì):學(xué)生查詢自己的課程成績(jī)。學(xué)生正常登錄后,在該頁(yè)面選擇課程名稱(chēng)后單擊“查詢”按鈕,提交查詢信息,可以查詢?cè)撜n程的成績(jī)。頁(yè)面首先創(chuàng)建網(wǎng)頁(yè)表單并對(duì)表單控件進(jìn)行設(shè)置。代碼如下所示。 查詢選擇: 請(qǐng)選擇學(xué)期名稱(chēng) option value=  退出登錄 2 查詢并顯示課程成績(jī) 頁(yè)面設(shè)計(jì):利用Session(”id”)變量和接收的學(xué)期名稱(chēng),來(lái)查詢學(xué)生該學(xué)期的所有課程成績(jī),最后把查詢出的課程成績(jī)顯示出來(lái)。 代碼如下所

30、示。 課程名稱(chēng) 成績(jī)(分) 備注 說(shuō)明:在Seek.asp中,需要對(duì)當(dāng)前用戶進(jìn)行判斷,只有已登錄的用戶,Session(”id”)才能打開(kāi)此頁(yè),并根據(jù)此變量來(lái)查詢相應(yīng)學(xué)生的成績(jī)。4.7 管理員登錄模塊此模塊包括管理員登錄和檢查管理員登錄信息。此模塊負(fù)責(zé)根據(jù)管理員所輸入的賬號(hào)和密碼判斷該用戶是否合法,以及具有哪些操作權(quán)限,并根據(jù)不同的權(quán)限,返回包含不同模塊的頁(yè)面。管理員登錄頁(yè)Login.aspLogin.asp是管理員登錄頁(yè),用于管理員登錄。管理員要管理該系統(tǒng),必須正確登錄后,才能進(jìn)入該系統(tǒng)進(jìn)行管理。管理員單擊系統(tǒng)首頁(yè)Default.asp(如圖4.7所示)下方的“轉(zhuǎn)入管理員登錄頁(yè)面”鏈接,即可

31、進(jìn)入該頁(yè)面,進(jìn)行登錄。管理員進(jìn)入該頁(yè)面,在該頁(yè)面輸入用戶名和密碼后單擊“登錄”按鈕即可。頁(yè)面顯示效果如圖4.9所示。圖4.9 的頁(yè)面控件及功能如表4-9所示。表4-9 管理員登錄頁(yè)頁(yè)面控件及功能對(duì)象功能表格用于控制頁(yè)面顯示信息位置表單名稱(chēng)為form1,提交目標(biāo)網(wǎng)頁(yè)為Admin.asp,數(shù)據(jù)采用隱式傳遞方式文本框名稱(chēng)為name,用于輸入管理員賬號(hào)密碼框名稱(chēng)為pwd,用于輸入管理員密碼按鈕單擊“登錄”按鈕,提交表單按鈕單擊“重置”按鈕,清空文本框和密碼框內(nèi)容 頁(yè)面代碼分析下面介紹Login.asp的主要代碼,其中頁(yè)面代碼分析如下所示。 1 創(chuàng)建網(wǎng)頁(yè)表單 頁(yè)面設(shè)計(jì):利用網(wǎng)頁(yè)表單,將管理員輸入的賬號(hào)和

32、密碼提交給目標(biāo)網(wǎng)頁(yè),由目標(biāo)網(wǎng)頁(yè)驗(yàn)證用戶輸入的信息。頁(yè)面首先創(chuàng)建網(wǎng)頁(yè)表單并對(duì)表單控件進(jìn)行設(shè)置。代碼如下所示。 tr align=”center”bgcolor=”#FFE0A2” 管理員登錄 用戶名:   密碼:   2 接收網(wǎng)頁(yè)表單傳遞過(guò)來(lái)的數(shù)據(jù)并進(jìn)行校驗(yàn) 頁(yè)面設(shè)計(jì):定義chkLogin()過(guò)程,用來(lái)檢驗(yàn)管理員的登錄信息。首先根據(jù)頁(yè)面返回的action值來(lái)調(diào)用相應(yīng)的過(guò)程,然后頁(yè)面接收傳遞過(guò)來(lái)的表單數(shù)據(jù),然后判斷登錄賬號(hào)和密碼的合法性。若未通過(guò)密碼和賬號(hào)驗(yàn)證則給出相應(yīng)的提示信息,若通過(guò)了登錄驗(yàn)證,則生成Session變量name(用戶名)并跳轉(zhuǎn)到管理員管理頁(yè)Admin.asp

33、。代碼如下所示。%定義ChkLogin()過(guò)程用來(lái)檢驗(yàn)管理員的登錄信息,成功則跳轉(zhuǎn)到Admin.asp,失敗則給出相應(yīng)的錯(cuò)誤提示 Sub ChkLogin() Dim name 聲明變量 Dim pwd 獲取傳遞過(guò)來(lái)的表單數(shù)據(jù) name=Trim(Request.Form(”name”) 獲取登錄賬號(hào) pwd=Trim(Request.Form(”pwd”) 獲取登錄密碼 判斷登錄賬號(hào)與密碼的合法性 If name=”O(jiān)r pwd=” Then 如果登錄密碼或賬號(hào)為空,則提示請(qǐng)輸入賬號(hào)或密碼! Response.Write ”alert(請(qǐng)輸入賬號(hào)或密碼!); History.go(-1);”

34、 Response.End Else Set Rs=Server.createobject(”ADODB.Recordset”) 創(chuàng)建記錄集對(duì)象 以接收的管理員賬號(hào)為條件把管理員信息從管理員信息表中取出來(lái) Sql=”Select * From Admin Where name=”&name&” ” Rs.Open Sql,conn,3,3 把取出的信息放在記錄集對(duì)象中 如果記錄集對(duì)象中無(wú)此賬號(hào)記錄,則提示用戶名錯(cuò)誤,請(qǐng)重新輸入! If Rs.EOF Or Rs.BOF Then Response.Write”alert(用戶名錯(cuò)誤,請(qǐng)重薪輸入!);” Response.End 用戶名和密碼檢驗(yàn)合格,剛生成Session變量 ElseIf name=Rs(”name”) And pwd=Rs(”pwd”) Then Session (”name”)=Rs(”name”) Response.Redirect ”Admin.asp” Else Response.Write”alert(密碼錯(cuò)誤,請(qǐng)重新輸入);History.go(-1);” Response.end End If End If R

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論