2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  網(wǎng)上報名及在線考試系統(tǒng)的設(shè)計與實現(xiàn)</p><p> 論文作者姓名:</p><p> 申請學位專業(yè):</p><p> 申請學位類別:</p><p> 指導教師姓名(職稱):</p><p> 論文提交日期:</p><p>  網(wǎng)上報名及在線考試系統(tǒng)的設(shè)計與實現(xiàn)<

2、;/p><p><b>  摘 要</b></p><p>  隨著計算機技術(shù)的迅猛發(fā)展,學校教學和管理的信息化發(fā)展也有長足的進步,考試也是一樣。與傳統(tǒng)的考試方式相比,網(wǎng)絡(luò)考試系統(tǒng)極大地提高了教學的靈活性,并在許多領(lǐng)域已經(jīng)有了廣泛的應用。網(wǎng)上考試系統(tǒng)的最大優(yōu)點是可以動態(tài)地管理各種考試信息,這大大的降低了考生作弊的可能性,在各類考試中發(fā)揮高效、便捷的作用,能把老師從繁重的

3、工作中解脫出來!</p><p>  該網(wǎng)上報名及在線考試系統(tǒng)由用戶網(wǎng)上報名模塊、考試模塊和系統(tǒng)管理模塊等三大模塊組成。其中系統(tǒng)管理模塊是進行題目的添加、存儲和刪除,是系統(tǒng)運行的基礎(chǔ);查詢子模塊實現(xiàn)了對學生考試信息查詢。考生通過自己的姓名和密碼登陸系統(tǒng),進入考試界面后按照管理員預先設(shè)置好考試題目,自動生成試卷參加考試。系統(tǒng)選用的開發(fā)軟件是ASP,后臺數(shù)據(jù)庫為ACCESS2000。</p><p

4、>  關(guān)鍵詞:access;在線考試;asp</p><p>  The Design and Implementation of Online Registration and Examination System</p><p><b>  Abstract</b></p><p>  With the fast developmen

5、t of computer technology, there’s great progress in school information management, so does the examinations. Compared with traditional examinations, the online examination system enhances the teaching flexibility enormou

6、sly and is widely used in many domains. The greatest adventure of online examination system is that it can manage any kinds of exam information, which greatly reduce the rates of examine cheats. At the same time online e

7、xamination system will have a highly</p><p>  This online registration and examination system is consisted with three main modules, which are register module, examination module and system management module.

8、 The system management module can add, save and delete subjects, which is the basis in the whole system. The inquire sub module realizes the query of examine information. The students input their names and passwords to l

9、ogin in the system, and after entering the examination interface, the examination paper is produced automatically as th</p><p>  Key words: access;online examination;asp</p><p><b>  目 錄&l

10、t;/b></p><p><b>  論文總頁數(shù):24頁</b></p><p><b>  1引言1</b></p><p><b>  1.1課題背景1</b></p><p><b>  1.2選題意義1</b></p>

11、<p>  1.3課題研究思路和方法1</p><p><b>  2關(guān)鍵技術(shù)1</b></p><p><b>  2.1 ASP1</b></p><p>  2.2 ACCESS3</p><p>  3 數(shù)據(jù)庫設(shè)計說明3</p><p>  3.1

12、管理員信息表3</p><p>  3.2課程檔案表4</p><p>  3.3考生考試計劃表4</p><p><b>  3.4考生表4</b></p><p><b>  3.5試題表5</b></p><p>  3.6考試計劃表5</p>

13、<p>  3.7考試過程控制表6</p><p>  4網(wǎng)上報名及考試系統(tǒng)的設(shè)計與實現(xiàn)6</p><p>  4.1功能模塊劃分6</p><p>  4.1.1網(wǎng)上報名6</p><p>  4.1.2前臺操作管理6</p><p>  4.1.3后臺管理7</p><p

14、>  4.2各功能模塊的設(shè)計與實現(xiàn)8</p><p>  4.2.1新生報名8</p><p>  4.2.2在線考試8</p><p>  4.2.3成績查詢12</p><p>  4.2.4個人信息及密碼修改14</p><p>  4.2.5操作員管理15</p><p&g

15、t;  4.2.6課程檔案管理16</p><p>  4.2.7試題檔案管理17</p><p>  4.2.8考試計劃管理19</p><p>  4.2.9考生信息管理20</p><p><b>  5系統(tǒng)測試20</b></p><p>  5.1對考生在線報名功能的測試20

16、</p><p>  5.2對在線考生功能的測試21</p><p><b>  結(jié) 論22</b></p><p><b>  參考文獻22</b></p><p><b>  致 謝23</b></p><p><b>  

17、聲 明24</b></p><p><b>  1引言</b></p><p><b>  1.1課題背景</b></p><p>  考試是教學活動的重要環(huán)節(jié),但由于考試類型的不斷增加和考試要求的不斷提高,傳統(tǒng)的考試方式已經(jīng)不能適應現(xiàn)代考試的需要。隨著計算機網(wǎng)絡(luò)的普及和發(fā)展,如何利用計算機進行考試,以提高

18、教學效率和考試質(zhì)量,更大范圍的共享教學資源,是一個值得深入的研究的課題。</p><p>  目前,開發(fā)網(wǎng)上考試系統(tǒng)多采用Microsoft office中access技術(shù),采用VB、VC編寫程序,在實時性、交互性和訪問WEB服務(wù)器上的數(shù)據(jù)庫方面存在不盡人意的地方。而asp作為當今最流行的動態(tài)頁面技術(shù),具有無可比擬的簡單性、實時性、快速性、輸出格式容易控制等功能,不僅能夠使程序的交互更加方便,更重要的是他還提供了

19、非常方便的訪問數(shù)據(jù)庫的功能。因而采用asp技術(shù)開發(fā)網(wǎng)上考試系統(tǒng)具有顯著的優(yōu)勢。</p><p><b>  1.2選題意義</b></p><p>  隨著社會的進步和商品經(jīng)濟的不斷發(fā)展,社會對勞動者和技術(shù)人員的知識和能力水平的要求越來越高??荚囎鳛楹饬咳说哪芰Φ闹匾侄?,在現(xiàn)代生活的地位進一步提高,并深入到社會各個方面,各種各樣的學歷考試、資格證書考試層出不窮。同時

20、,Internet技術(shù)的發(fā)展是得考試的技術(shù)手段和載體發(fā)生了革命性的變化。Internet的開放性和分布性的特點以及基于Internet的巨大計算能力使得考試突破了時間和空間的限制。網(wǎng)絡(luò)應用不斷擴大,如遠程教育和虛擬大學的出現(xiàn)等;使得基于Web的在線考試系統(tǒng)成為現(xiàn)實?;赪eb的在線考試系統(tǒng)可以發(fā)揮網(wǎng)絡(luò)的優(yōu)勢,建立大型、高效、共享的題庫和實現(xiàn)隨時隨地的考試,降低考試成本,減少人為的干擾。減輕教師的負擔,節(jié)約人力,物力,和財力。</p

21、><p>  1.3課題研究思路和方法</p><p>  本次畢業(yè)設(shè)計首先分析網(wǎng)上報名和在線考試的相關(guān)功能,結(jié)合本次畢業(yè)設(shè)計的相關(guān)要求寫出需求分析;其次,綜合運用以前所學的相關(guān)知識(包括計算機網(wǎng)絡(luò)技術(shù)、數(shù)據(jù)庫、網(wǎng)頁制作等),采用Asp+ access進行本畢業(yè)設(shè)計的開發(fā),使用 Macromedia Dreamweaver MX 2004來編輯相關(guān)頁面;在設(shè)計中以需求分析為基礎(chǔ),寫出

22、系統(tǒng)開發(fā)計劃、實現(xiàn)流程及相關(guān)問題的實現(xiàn)方法。</p><p><b>  2關(guān)鍵技術(shù)</b></p><p><b>  2.1 ASP</b></p><p>  Microsoft Active Server Pages 即我們所稱的ASP,其實是一套微軟開發(fā)的服務(wù)器端腳本環(huán)境。Active Server Page 是

23、創(chuàng)建動態(tài)網(wǎng)頁的一個很好的工具,它起一種編程語言的作用,可以利用它編寫動態(tài)產(chǎn)生HTML的程序代碼。因此,只要用戶瀏覽Web站點并請求一個ASP頁,Web服務(wù)器就可以處理相應的ASP代碼,生成HTML代碼,然后將它傳遞到用戶瀏覽器并顯示出網(wǎng)頁。ASP內(nèi)含于IIS3.0和4.0之中,通過ASP我們可以結(jié)合HTML網(wǎng)頁、ASP指令和ActiveX元件建立動態(tài)、交互且高效的WEB服務(wù)器應用程序。有了ASP就不必擔心客戶的瀏覽器是否能運行所編寫的代

24、碼,因為所有的程序都將在服務(wù)器端執(zhí)行,包括所有嵌在普通HTML中的腳本程序。當程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。以下羅列了ASP所獨具的一些特點</p><p> ?。?)利用ASP可以實現(xiàn)突破靜態(tài)網(wǎng)頁的一些功能限制,實現(xiàn)動態(tài)網(wǎng)頁技術(shù);</p><p>  (2)ASP文件是包含在HTML代碼所組成的文件中的,易于

25、修改和測試;   </p><p> ?。?)服務(wù)器上的ASP解釋程序會在服務(wù)器端制定ASP程序,并將結(jié)果以HTML格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽ASP所產(chǎn)生的網(wǎng)頁;   </p><p> ?。?)ASP提供了一些內(nèi)置對象,使用這些對象可以使服務(wù)器端腳本功能更強。例如可以從web瀏覽器中獲取用戶通過HTML表單提交的信息,并在腳

26、本中對這些信息進行處理,然后向web瀏覽器發(fā)送信息;   </p><p> ?。?)ASP可以使用服務(wù)器端ActiveX主鍵來執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫、訪問文件系統(tǒng)等。  </p><p>  

27、(6)由于服務(wù)器是將ASP程序執(zhí)行的結(jié)果以HTML格式傳回客戶端瀏覽器,因此使用者不會看到ASP所編寫的原始程序代碼,可放置ASP程序代碼被竊取。 </p><p>  ASP包含三方面含義:</p><p> ?。?)Active:ASP使用了微軟的ActiveX技術(shù)。ActiveX(COM)技術(shù)是現(xiàn)在Microsoft軟件的重要基礎(chǔ)。它采用封裝對象,程序調(diào)用對象的技術(shù),簡化編程,加強程

28、序間合作。ASP本身封裝了一些基本組件和常用組件,有很多公司也開發(fā)了很多實用組件。只要你可以在服務(wù)器上安裝這些組件,通過訪問組件,你就可以快速、簡易地建立自己的WEB應用。</p><p> ?。?)Server:ASP運行在服務(wù)器端。這樣就不必擔心瀏覽器是否支持ASP所使用的編程語言。ASP的編程語言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一個簡集,會VB的人可以很方便的快速上手。然而N

29、etscape瀏覽器不支持客戶端的VBSCRIPT,所以最好不要在客戶端使用VBSCRIPT。而在服務(wù)器端,則無需考慮瀏覽器的支持問題。Netscape瀏覽器也可以正常顯示ASP頁面。</p><p> ?。?)Pages:ASP返回標準的HTML頁面,可以正常地在常用的瀏覽器中顯示。瀏覽者查看頁面源文件時,看到的是ASP生成的HTML代碼,而不是ASP程序代碼。這樣就可以防止別人抄襲程序。</p>

30、<p>  由此可以看出,ASP是在IIS下開發(fā)WEB應用的一種簡單、方便的編程工具。在了解了VBSCRIPT的基本語法后,只需要清楚各個組件的用途、屬性、方法,就可以輕松編寫出自己的ASP系統(tǒng)。</p><p>  2.2 ACCESS</p><p>  Access是Office系列軟件中用來專門管理數(shù)據(jù)庫的應用軟件。所謂數(shù)據(jù)庫是指經(jīng)過組織的、關(guān)于特定主題或?qū)ο蟮男畔⒓?/p>

31、。數(shù)據(jù)庫管理系統(tǒng)分為兩類:文件管理系統(tǒng)和關(guān)系型管理系統(tǒng)。Access應用程序就是一種功能強大且使用方便的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),一般也稱關(guān)系型數(shù)據(jù)庫管理軟件。它可運行于各種Microsoft Windows系統(tǒng)環(huán)境中,由于它繼承了Windows的特性,不僅易于使用,而且界面友好,如今在世界各地廣泛流行。它并不需要數(shù)據(jù)庫管理者具有專業(yè)的程序設(shè)計水平,任何非專業(yè)的用戶都可以用它來創(chuàng)建功能強大的數(shù)據(jù)庫管理系統(tǒng)。本章將專門介紹Acces

32、s 2002(下面簡稱為Access)的基本功能及其常用的操作,主要內(nèi)容包括創(chuàng)建和使用數(shù)據(jù)表,建立和使用查詢、窗體,以及數(shù)據(jù)表與其他數(shù)據(jù)文件之間的轉(zhuǎn)換等。</p><p>  Access使用標準的SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)作為它的數(shù)據(jù)庫語言,從而提供了強大的數(shù)據(jù)處理能力和通用性,使其成為一個功能強大而且易于使用的桌面關(guān)系型數(shù)據(jù)庫管理

33、系統(tǒng)和應用程序生成器。 一個Access數(shù)據(jù)庫中可以包含表、查詢、窗體、報表、宏、模塊以及數(shù)據(jù)訪問頁。不同于傳統(tǒng)的桌面數(shù)據(jù)庫(dbase、 FoxPro、Paradox), Access數(shù)據(jù)庫使用單一的*.mdb文件管理所有的信息,這種針對數(shù)據(jù)庫集成的最優(yōu)化文件結(jié)構(gòu)不僅包括數(shù)據(jù)本身,也包括了它的支持對象。</p><p>  此外,Access 2002還利用Office套件共享的

34、編程語言VBA(Visual Basic for Application)進行高級操作控制和復雜的數(shù)據(jù)操作。</p><p><b>  3 數(shù)據(jù)庫設(shè)計說明</b></p><p>  根據(jù)系統(tǒng)需要,我們在數(shù)據(jù)庫中建立了7張表,分別如下:</p><p><b>  3.1管理員信息表</b>

35、</p><p><b>  表1 admin表</b></p><p>  管理員信息表是用來存放管理員登錄的名稱,密碼,個人信息,權(quán)限等數(shù)據(jù)。</p><p>  Adminpurview :c此字段的作用是存放普通管理員的權(quán)限,它的取值可以為以下幾種之一;</p><p>  0 代表擁有所有權(quán)限;</p&g

36、t;<p>  1代表維護試題的權(quán)限;</p><p>  2代表維護考生檔案;</p><p><b>  4代表維護考試計劃</b></p><p><b>  8代表維護課程檔案</b></p><p>  這里權(quán)限值使用1.2.4.8的原因是它們分別代表二進制餓1.10.100

37、.1000.所以方便于多種權(quán)限的組合判斷,在賦予管理員多種權(quán)限時,只需要把這些權(quán)限值相加即可,在判斷時只需要把權(quán)限值進行相應的“與”運算就可判斷是否擁有某種權(quán)限。</p><p><b>  3.2課程檔案表</b></p><p>  課程檔案表主要用來存放考試課程名稱等數(shù)據(jù)。</p><p>  表2 course表</p>

38、<p>  3.3考生考試計劃表</p><p>  表3 prj_student</p><p>  本表用來存儲每個考生每次考試的成績,開始時間,結(jié)束時間等信息。</p><p>  Mark:類型為整型,為考生在考試計劃中的成績。</p><p>  State:類型為整型,為考試進行的狀態(tài)0為沒有考試,1為已經(jīng)參加過考試,2

39、為正在進行考試。</p><p>  Endtime:類型為日期時間型,為考生的交卷時間。</p><p><b>  3.4考生表</b></p><p>  表4 student</p><p>  考生檔案表用來存放考生的個人信息 ,姓名,登錄名稱,密碼,性別,生日等數(shù)據(jù)</p><p> 

40、 Studenttype:類型為整型,用來表示考生的類型,當值為0時表示此考生已經(jīng)進行報名申請但還沒有審批;當值為1時表示此考生是已報名考生。</p><p><b>  3.5試題表</b></p><p>  表5 subject</p><p>  本表就是系統(tǒng)的題庫,本系統(tǒng)中所用的試題都存放在此表中。</p><p

41、>  Answer字段:類型為整型,用于存放本題的正確答案,此字段表示答案的方法是 :當題目類型為選擇題時,從低位二進制到高位二進制位分別代表1-6個選項的選擇情況。當1時代表選定,0代表未選定;當題目類型為是非題時,1代表對,0代表錯</p><p><b>  3.6考試計劃表</b></p><p>  表 6 project</p><

42、;p>  本表是用來存放有關(guān)考試計劃的。如考試本次考試計劃的名稱,考試題型,數(shù)量,開始時間,結(jié)束時間等信息。</p><p>  3.7考試過程控制表</p><p>  表7 prj_process</p><p>  本表的作用是用來管理考試的進程,表內(nèi)主要存放考生正在進行的考試計劃的考試題目與答題情況信息,本表只在考生考試過程中臨時存放信息,當考生考試結(jié)

43、束時就會刪除相關(guān)的信息。</p><p>  4網(wǎng)上報名及考試系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b>  4.1功能模塊劃分</b></p><p>  系統(tǒng)實現(xiàn)了網(wǎng)上報名,前臺操作原理,后臺操作管理三大功能。系統(tǒng)結(jié)構(gòu)圖如圖4-1 所示</p><p><b>  4.1.1網(wǎng)上報名</b><

44、;/p><p>  考生登陸考試系統(tǒng)填寫資料申請在線報名,當?shù)玫焦芾韱T的審批后即可登錄到考試中心,參加考試。</p><p>  4.1.2前臺操作管理</p><p>  前臺操作管理包括:在線考試、成績查詢、考試信息查詢、個人信息及密碼修改。</p><p> ?。?)在線考試:學生登錄以后可以任選時間進行在線測試,考試結(jié)束后,系統(tǒng)會根據(jù)已有

45、的標準答案進行在線判卷,考生可以立刻知道考試成績。</p><p> ?。?)成績查詢:學生可以在線查詢以前參加過的每門課程的考試相關(guān)信息。</p><p> ?。?)個人信息及密碼修改:當考試信息有變動時,考生可以根據(jù)變動的信息進行相應信息的修改。</p><p><b>  4.1.3后臺管理</b></p><p>

46、;  后臺管理模塊,主要功能有操作遠管理、課程檔案管理、試題檔案管理、考試計劃管理、考生管理等</p><p> ?。?)操作員管理:操作員的類型包括超級管理員與普通管理員,操作員管理包括對管理員信息的添加,刪除,修改等操作。</p><p>  圖4-1 系統(tǒng)結(jié)構(gòu)圖</p><p> ?。?)課程檔案管理:主要用來對考試試題和考試計劃進行分課程管理,課程管理模塊主

47、要功能有:添加,修改,刪除課程信息。</p><p> ?。?)考試計劃管理:考試計劃實際上相當于考試試卷,管理員如果將要組織一次考試的話,就需要填寫一條考試計劃,考試計劃管理模塊的主要功能有:添加,修改,刪除考試計劃。</p><p> ?。?)試題檔案管理:本系統(tǒng)中試題本分為 :單選題,多選題,是非題三種,試題檔案管理模塊的主要功能有:添加,修改,刪除等操作。</p>&

48、lt;p> ?。?)考生檔案管理:分為兩部分,一部分是在后臺管理員進行管理,后臺管理員管理的功能有:考生檔案的添加,修改,刪除;對已提交注冊申請的考生進行審批。一部分是在前臺由考生本人進行管理,前臺考生對檔案管理的功能有;修改自己的基本信息,修改登陸密碼。</p><p>  4.2各功能模塊的設(shè)計與實現(xiàn)</p><p><b>  4.2.1新生報名</b>&

49、lt;/p><p>  如果沒有參加報名的考生想要參加考試,可以進入在線報名與考試系統(tǒng)進行在線報名,在線提交相應信息,然后等待管理員的資格審批。只有審批后的考生才能參加考試。完成此功能的主要頁面有student_reg.asp, student_regpost.asp效果圖如圖4-2所示。</p><p>  圖4-2 考生在線報名頁面</p><p><b>

50、;  4.2.2在線考試</b></p><p>  考生登陸考試系統(tǒng)時,系統(tǒng)根據(jù)登錄名和密碼判斷考生是否為報名后的考生,如果沒有報名則提示考生先注冊,注冊完成后需要管理員審核考生是否符合條件,審核通過后考生才能參加考試。</p><p>  考生登錄后,可以選擇相應的試題進行在線考試??荚囘^程中考生的答案保存在考試過程控制表(prj_process)中。自動生成試卷函數(shù)根據(jù)考

51、試計劃中的設(shè)置,從試題庫中隨機按要求組成試卷并存入考試過程控制表(prj_process)中。</p><p>  考試結(jié)束采取自動交卷和到了規(guī)定的時間系統(tǒng)強制交卷的有機結(jié)合的方式予以實現(xiàn)。系統(tǒng)根據(jù)管理員制定好的答案進行判斷,自動給出考生的考試成績。</p><p>  在線考試主要頁面有function.asp,考試頁面testing.asp,保存答案頁面test_saveanswer.

52、asp,考試結(jié)束顯示結(jié)果頁面testfinish.asp,成績查詢頁面student_markquery.asp .</p><p>  自動生成試卷的主要代碼片段如下:</p><p><b>  '生成試卷</b></p><p>  function makePaper(intPrjID,intStudentID)</p&g

53、t;<p>  dim rsPaper,strSqlPaper,rsNew,strSqlNew,intCourseID,intCount,arrTemp,intSSCount,arrSS,intMSCount,arrMS,intBCount,arrB,intCurType,I,J,intPos,blnPass</p><p>  G_CONN.execute "delete from pr

54、j_process where prjid=" & intPrjID & " and studentid=" & intStudentID</p><p>  set rsPaper = server.createobject("ADODB.Recordset")</p><p>  strSqlPaper = &q

55、uot;select courseid,ss_count,ms_count,b_count from project where prjid=" & intPrjID</p><p>  rsPaper.open strSqlPaper,G_CONN,1,1</p><p>  if not rsPaper.bof and not rsPaper.eof then<

56、/p><p>  intCourseID = rsPaper("courseid")</p><p>  intSSCount = rsPaper("ss_count")</p><p>  intMSCount = rsPaper("ms_count")</p><p>  intBC

57、ount = rsPaper("b_count")</p><p><b>  else</b></p><p>  rsPaper.close</p><p>  set rsPaper = nothing</p><p>  makePaper = false</p><p&g

58、t;  exit function</p><p><b>  end if</b></p><p>  rsPaper.close</p><p>  for intCurType = 1 to 3</p><p>  select case intCurType</p><p><b&g

59、t;  case 1</b></p><p>  intCount = intSSCount</p><p><b>  case 2</b></p><p>  intCount = intMSCount</p><p><b>  case 3</b></p><

60、p>  intCount = intBCount</p><p>  end select</p><p>  if intCount > 0 then</p><p>  redim arrTemp(intCount)</p><p>  strSqlPaper = "select id from subject wh

61、ere type=" & intCurType & " and courseid=" & intCourseID</p><p>  rsPaper.open strSqlPaper,G_CONN,1,1</p><p>  if rsPaper.recordcount < intCount then'判斷當前題庫內(nèi)試題

62、是否足夠</p><p>  rsPaper.close</p><p>  set rsPaper = nothing</p><p>  makePaper = false</p><p>  exit function</p><p><b>  end if</b></p>

63、<p>  randomize timer</p><p>  intPos = int(rnd() * rsPaper.recordcount)</p><p>  arrTemp(1) = intPos</p><p>  for I = 2 to intCount</p><p>  intPos = int(rnd() *

64、rsPaper.recordcount)</p><p>  blnPass = false</p><p>  while blnPass = false</p><p>  for J = 1 to I - 1</p><p>  if intPos = arrTemp(J) then</p><p><b&

65、gt;  exit for</b></p><p><b>  end if</b></p><p><b>  next</b></p><p>  if J = I then</p><p>  blnPass = true</p><p><b>

66、  else</b></p><p>  '使用線性探測解決沖突問題</p><p>  intPos = intPos + 1</p><p>  if intPos = rsPaper.recordcount then</p><p>  intPos = 0</p><p><b>

67、  end if</b></p><p><b>  end if</b></p><p><b>  wend</b></p><p>  arrTemp(I) = intPos</p><p><b>  next</b></p><p>

68、;  strSqlNew = "select * from prj_process"</p><p>  set rsNew = server.createobject("ADODB.Recordset")</p><p>  rsNew.open strSqlNew,G_CONN,1,3</p><p>  for I =

69、1 to intCount</p><p>  rsPaper.move arrTemp(I),1</p><p>  rsNew.addnew</p><p>  rsNew("prjid") = intPrjID</p><p>  rsNew("subid") = rsPaper("id

70、")</p><p>  rsNew("studentid") = intStudentID</p><p>  rsNew.update</p><p><b>  next</b></p><p>  rsNew.close</p><p>  rsPaper.c

71、lose</p><p><b>  end if</b></p><p><b>  next</b></p><p>  G_CONN.execute "update prj_student set state=2"</p><p>  G_CONN.execute &quo

72、t;update prj_student set starttime=now()"</p><p>  set rsPaper = nothing</p><p>  makePaper = true</p><p>  end function</p><p>  考試過程中對考生答案的保存的主要代碼片段如下:</p>

73、<p><b>  <%</b></p><p>  dim rsSaveAnswer,strSqlSaveAnswer,intAnswer,strAction,intID'考生答案,動作(主要用于多選題,決定是選中還是取消),試題ID</p><p>  intAnswer = CLng(trim(request.querystring

74、("answer")))‘取得考試信息和答案</p><p>  strAction = request.querystring("action")</p><p>  intID = request.querystring("id")</p><p>  set rsSaveAnswer = server

75、.createobject("ADODB.Recordset")‘取得詳細的題目,考生及考生答題狀況信息。</p><p>  strSqlSaveAnswer = "select P_P.*,P_S.state,P_S.starttime,P.limittime from prj_process P_P,prj_student P_S,project P where P_P.stu

76、dentid=P_S.studentid and P_P.prjid=P_S.prjid and P_S.prjid=P.prjid and P_P.id=" & intID</p><p>  rsSaveAnswer.open strSqlSaveAnswer,G_CONN,1,3</p><p>  if rsSaveAnswer("state"

77、) = 2 and DateDiff("n",rsSaveAnswer("starttime"),now()) < rsSaveAnswer("limittime") then'驗證此答案是否在有效的時間內(nèi)提交的.</p><p><b>  ‘判斷答案合法性</b></p><p>  if

78、 intAnswer = 0 or intAnswer = 1 or intAnswer = 2 or intAnswer = 4 or intAnswer = 8 or intAnswer = 16 or intAnswer = 32 then</p><p>  '根據(jù)題目類型不同以不同方式保存答案</p><p>  if strAction = "selected

79、" then</p><p>  if rsSaveAnswer("answer") < 0 then</p><p>  rsSaveAnswer("answer") = intAnswer</p><p><b>  else</b></p><p>  rsS

80、aveAnswer("answer") = rsSaveAnswer("answer") or intAnswer</p><p><b>  end if</b></p><p>  elseif strAction = "selectcancel" then</p><p>  r

81、sSaveAnswer("answer") = rsSaveAnswer("answer") and not intAnswer</p><p><b>  else</b></p><p>  rsSaveAnswer("answer") = intAnswer</p><p>&l

82、t;b>  end if</b></p><p>  rsSaveAnswer.update</p><p><b>  else</b></p><p>  response.write "<script>alert('答案不合法!');</script>"<

83、/p><p><b>  end if</b></p><p><b>  else</b></p><p>  response.write "<script>alert('現(xiàn)在不是考試時間,不能進行答題!');</script>"</p><p

84、><b>  end if</b></p><p>  rsSaveAnswer.close</p><p>  set rsSaveAnswer = nothing</p><p><b>  %></b></p><p><b>  4.2.3成績查詢</b>&

85、lt;/p><p>  考生登陸系統(tǒng)后 考生可以使用成績查詢功能進行以往考試科目的成績查詢。考生登錄系統(tǒng)后首先驗證考生的登錄狀態(tài),只有登錄后的考生才能夠進行以往考試成績的查詢,如果考生沒有登錄則自動轉(zhuǎn)到考生登錄頁面student_login.asp。要求考生進行登錄驗證。</p><p><b>  其主要代碼如下: </b></p><p>  

86、if checkStudentLogin() = false then'檢測考生登錄狀態(tài)</p><p>  response.redirect "student_login.asp"‘</p><p><b>  end if</b></p><p>  strErr = ""</p&g

87、t;<p>  intCourseID = CInt(request.form("courseid"))</p><p>  '驗證日期輸入是否正確</p><p>  if Trim(request.form("starttime")) <> "" then</p><p&g

88、t;  if IsDate(Trim(request.form("starttime"))) = true then</p><p>  dtmStartTime = CDate(Trim(request.form("starttime")))</p><p><b>  else</b></p><p>

89、;  strErr = "<li>起始日期格式錯誤</li>" & vbcrlf</p><p><b>  end if</b></p><p><b>  else</b></p><p>  dtmStartTime = CDate("2000-1-1&q

90、uot;)</p><p><b>  end if</b></p><p>  if Trim(request.form("endtime")) <> "" then</p><p>  if IsDate(Trim(request.form("endtime"))) =

91、 true then</p><p>  dtmEndTime = CDate(Trim(request.form("endtime")))</p><p><b>  else</b></p><p>  strErr = "<li>結(jié)束日期格式錯誤</li>" & vb

92、crlf</p><p><b>  end if</b></p><p><b>  else</b></p><p>  dtmEndTime = CDate("2200-1-1")</p><p><b>  end if</b></p>

93、<p>  if strErr = "" then'如果通過驗證則顯示出查詢結(jié)果</p><p>  strSqlMark = "select P.prjname,P_S.mark,P_S.state,P_S.starttime,P_S.endtime from project P,prj_student P_S where "</p>

94、<p>  strSqlMark = strSqlMark & "P.prjid = P_S.prjid and P_S.studentid=" & request.cookies("aoyi")("studentid") & " and P.starttime > #" & dtmStartTime &

95、; "# and P.starttime < #" & dtmEndTime & "# and (P_S.state=1 or P_S.state=3)"</p><p>  if intCourseID > 0 then</p><p>  strSqlMark = strSqlMark & " and

96、 P.courseid=" & intCourseID</p><p><b>  end if</b></p><p>  strSqlMark = strSqlMark & " order by P.starttime desc"</p><p>  4.2.4個人信息及密碼修改</p&g

97、t;<p>  考生登陸系統(tǒng)后可以進行考生個人的信息修改,考生必須先登錄系統(tǒng)然后才能進行相應的操作,考生能夠修改自己的姓名,出生日期,email,身份證號碼,但是必須滿足系統(tǒng)的格式要求。如果輸入中有不符合系統(tǒng)要求,系統(tǒng)會提示修改失敗并且給出失敗原因。其效果圖如圖4-3</p><p>  圖 4-3修改考生信息</p><p>  修改考生信息的主要代碼如下:</p&g

98、t;<p>  sub modifyInfo()</p><p>  dim rsModifyInfo,strSqlModifyInfo,strStudentName,blnSex,strTel,strEmail,dteBirthday,strErr</p><p>  strErr = ""</p><p>  '驗證考生

99、提交的信息是否合法</p><p>  if trim(request.form("studentname")) = "" then</p><p>  strErr = strErr & "<li>真實姓名為空。</li>" & vbcrlf</p><p><

100、;b>  else</b></p><p>  strStudentName = trim(request.form("studentname"))</p><p><b>  end if</b></p><p>  if IsDate(trim(request.form("birthday&q

101、uot;))) = false then</p><p>  strErr = strErr & "<li>出生日期未填寫或格式不正確。</li>" & vbcrlf</p><p><b>  else</b></p><p>  dteBirthday = CDate(trim(r

102、equest.form("birthday")))</p><p><b>  end if</b></p><p>  if CInt(request.form("sex")) > 0 then</p><p>  blnSex = true</p><p><b&g

103、t;  else</b></p><p>  blnSex = false</p><p><b>  end if</b></p><p>  strEmail = trim(request.form("email"))</p><p>  strTel = trim(request.f

104、orm("tel"))</p><p>  strStudentName=trim(request.form("studentname"))</p><p>  blnSex=trim(request.form("sex"))</p><p>  dteBirthday= trim(request.form

105、("birthday")) </p><p>  if strErr = "" then</p><p>  '如果通過驗證則進行考生信息的修改并顯示成功信息</p><p>  set rsModifyInfo = server.createobject("ADODB.Recordset")&

106、lt;/p><p>  strSqlModifyInfo = "update student set studentname='"&strstudentname&"',tel='"&strtel&"',email='"&stremail&"',birth

107、day='"&dtebirthday&"',sex='"&blnsex&"' where username='" & request.cookies("aoyi")("username") & "'"</p><p

108、>  rsModifyInfo.open strSqlModifyInfo,G_CONN,1,3</p><p>  '驗證考生記錄是否存在</p><p><b>  %></b></p><p>  4.2.5操作員管理</p><p>  操作員管理:操作員的類型包括超級管理員與普通管理員,超級

109、管理員管理包括對管理員登陸系統(tǒng)的密碼修改。普通管理員的管理包括,管理員的添加,登陸密碼修改,權(quán)限設(shè)置等操作。如圖4-4</p><p>  圖4-4 操作員管理頁面</p><p>  刪除操作員主要代碼如下:</p><p>  sub del()'刪除操作員</p><p>  dim intAdminID,strErr<

110、/p><p>  intAdminID = CLng(Trim(request.querystring("adminid")))</p><p>  if G_CONN.execute("select * from admin where adminid=" & intAdminID)("adminname") = "

111、;admin" then</p><p>  strErr = "<li>超級管理不能被刪除!</li>"</p><p>  call closeConn()</p><p>  showErrMsg(strErr)</p><p>  response.write "<

112、/body></html>"</p><p><b>  exit sub</b></p><p><b>  end if</b></p><p>  G_CONN.execute "delete from admin where adminid=" & intAd

113、minID</p><p>  call closeConn()</p><p>  response.redirect "admin_admin.asp"</p><p><b>  end sub</b></p><p>  4.2.6課程檔案管理</p><p>  課程

114、檔案管理:后臺管理員登錄后進入課程管理界面如圖4-4所示,首先系統(tǒng)會判斷登錄的管理員具備課程管理權(quán)限,超級管理員具有全部權(quán)限。如果沒有次項權(quán)限則提示管理員沒有此權(quán)限,不能進行課程檔案管理。 其刪除試題的主要代碼如下: </p><p>  sub del()'刪除試題</p><p>  dim strSubjectID,strErr</p><p> 

115、 strSubjectID = Trim(request.querystring("subjectid"))</p><p>  if strSubjectID = "" then</p><p>  strSubjectID = Trim(request.form("subjectid"))</p><p&g

116、t;<b>  end if</b></p><p>  if strSubjectID = "" then</p><p>  strErr = "<li>請選擇要刪除的試題!</li>"</p><p>  showErrMsg(strErr)</p><p

117、>  response.write "</body></html>"</p><p>  call closeConn()</p><p><b>  exit sub</b></p><p><b>  end if</b></p><p>  i

118、f G_CONN.execute("select count(*) as reccount from prj_process where subid in (" & strSubjectID & ")")("reccount") > 0 then</p><p>  strErr = "<li>此試題正在使用中

119、,不能被刪除!</li>"</p><p>  call closeConn()</p><p>  showErrMsg(strErr)</p><p>  response.write "</body></html>"</p><p><b>  exit sub

120、</b></p><p><b>  end if</b></p><p>  G_CONN.execute "delete from subject where id in (" & strSubjectID & ")"</p><p>  call closeConn()&

121、lt;/p><p>  response.redirect "admin_subject.asp"</p><p>  圖4-5 考試課程管理</p><p>  添加課程:填寫課程名稱后單擊“更新”按鈕即可添加課程。</p><p>  修改課程:單擊要修改的課程右側(cè)的修改“鏈接后,此課程信息會出現(xiàn)在”添加/修改表格內(nèi),修改

122、名稱后單擊“更新”按鈕即可完成修改。</p><p>  刪除課程:單擊待修改課程的右側(cè)的“刪除”鏈接即可。</p><p>  4.2.7試題檔案管理</p><p>  試題檔案管理:本系統(tǒng)中試題本分為 :單選題,多選題,是非題三種,管理員可以進行試題的添加效果圖如圖4-5,修改和刪除。管理員要進行試題管理首先也要判斷管理員是否具有試題管理的權(quán)限,如果有此權(quán)限才

123、能進行試題管理如果沒有系統(tǒng)會自動提示管理員不具備此權(quán)限不能進行相應的操作。其功能主要由admin_subject.asp頁面完成。</p><p><b>  圖4-6 添加試題</b></p><p>  其主要代碼片段如下:</p><p>  set rsSubject = server.createobject("ADODB.

124、Recordset")‘創(chuàng)建記錄集對象</p><p>  strSqlSubject = "select * from subject where id=0"</p><p>  rsSubject.open strSqlSubject,G_CONN,1,3</p><p>  rsSubject.addnew</p>

125、<p>  rsSubject("content") = strContent</p><p>  rsSubject("type") = intType</p><p>  rsSubject("option1") = strOption1</p><p>  rsSubject("o

126、ption2") = strOption2</p><p>  rsSubject("option3") = strOption3</p><p>  rsSubject("option4") = strOption4</p><p>  rsSubject("option5") = strOpt

127、ion5</p><p>  rsSubject("option6") = strOption6</p><p>  rsSubject("answer") = intAnswer</p><p>  rsSubject("courseid") = intCourseID</p><p&

128、gt;  rsSubject.update</p><p>  rsSubject.close</p><p>  set rsSubject = nothing</p><p>  call closeConn()</p><p>  if request.form("iscontinue") = "1&quo

溫馨提示

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

最新文檔

評論

0/150

提交評論