版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 論文作者姓名:</p><p> 申請(qǐng)學(xué)位專業(yè):</p><p> 申請(qǐng)學(xué)位類別:</p><p> 指導(dǎo)教師姓名(職稱):</p><p> 論文提交日期:</p><p> 網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)<
2、;/p><p><b> 摘 要</b></p><p> 隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展,學(xué)校教學(xué)和管理的信息化發(fā)展也有長(zhǎng)足的進(jìn)步,考試也是一樣。與傳統(tǒng)的考試方式相比,網(wǎng)絡(luò)考試系統(tǒng)極大地提高了教學(xué)的靈活性,并在許多領(lǐng)域已經(jīng)有了廣泛的應(yīng)用。網(wǎng)上考試系統(tǒng)的最大優(yōu)點(diǎn)是可以動(dòng)態(tài)地管理各種考試信息,這大大的降低了考生作弊的可能性,在各類考試中發(fā)揮高效、便捷的作用,能把老師從繁重的
3、工作中解脫出來(lái)!</p><p> 該網(wǎng)上報(bào)名及在線考試系統(tǒng)由用戶網(wǎng)上報(bào)名模塊、考試模塊和系統(tǒng)管理模塊等三大模塊組成。其中系統(tǒng)管理模塊是進(jìn)行題目的添加、存儲(chǔ)和刪除,是系統(tǒng)運(yùn)行的基礎(chǔ);查詢子模塊實(shí)現(xiàn)了對(duì)學(xué)生考試信息查詢??忌ㄟ^(guò)自己的姓名和密碼登陸系統(tǒng),進(jìn)入考試界面后按照管理員預(yù)先設(shè)置好考試題目,自動(dòng)生成試卷參加考試。系統(tǒng)選用的開(kāi)發(fā)軟件是ASP,后臺(tái)數(shù)據(jù)庫(kù)為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> 論文總頁(yè)數(shù):24頁(yè)</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ù)庫(kù)設(shè)計(jì)說(shuō)明3</p><p> 3.1
12、管理員信息表3</p><p> 3.2課程檔案表4</p><p> 3.3考生考試計(jì)劃表4</p><p><b> 3.4考生表4</b></p><p><b> 3.5試題表5</b></p><p> 3.6考試計(jì)劃表5</p>
13、<p> 3.7考試過(guò)程控制表6</p><p> 4網(wǎng)上報(bào)名及考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)6</p><p> 4.1功能模塊劃分6</p><p> 4.1.1網(wǎng)上報(bào)名6</p><p> 4.1.2前臺(tái)操作管理6</p><p> 4.1.3后臺(tái)管理7</p><p
14、> 4.2各功能模塊的設(shè)計(jì)與實(shí)現(xiàn)8</p><p> 4.2.1新生報(bào)名8</p><p> 4.2.2在線考試8</p><p> 4.2.3成績(jī)查詢12</p><p> 4.2.4個(gè)人信息及密碼修改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考試計(jì)劃管理19</p><p> 4.2.9考生信息管理20</p><p><b> 5系統(tǒng)測(cè)試20</b></p><p> 5.1對(duì)考生在線報(bào)名功能的測(cè)試20
16、</p><p> 5.2對(duì)在線考生功能的測(cè)試21</p><p><b> 結(jié) 論22</b></p><p><b> 參考文獻(xiàn)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> 考試是教學(xué)活動(dòng)的重要環(huán)節(jié),但由于考試類型的不斷增加和考試要求的不斷提高,傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。隨著計(jì)算機(jī)網(wǎng)絡(luò)的普及和發(fā)展,如何利用計(jì)算機(jī)進(jìn)行考試,以提高
18、教學(xué)效率和考試質(zhì)量,更大范圍的共享教學(xué)資源,是一個(gè)值得深入的研究的課題。</p><p> 目前,開(kāi)發(fā)網(wǎng)上考試系統(tǒng)多采用Microsoft office中access技術(shù),采用VB、VC編寫程序,在實(shí)時(shí)性、交互性和訪問(wèn)WEB服務(wù)器上的數(shù)據(jù)庫(kù)方面存在不盡人意的地方。而asp作為當(dāng)今最流行的動(dòng)態(tài)頁(yè)面技術(shù),具有無(wú)可比擬的簡(jiǎn)單性、實(shí)時(shí)性、快速性、輸出格式容易控制等功能,不僅能夠使程序的交互更加方便,更重要的是他還提供了
19、非常方便的訪問(wèn)數(shù)據(jù)庫(kù)的功能。因而采用asp技術(shù)開(kāi)發(fā)網(wǎng)上考試系統(tǒng)具有顯著的優(yōu)勢(shì)。</p><p><b> 1.2選題意義</b></p><p> 隨著社會(huì)的進(jìn)步和商品經(jīng)濟(jì)的不斷發(fā)展,社會(huì)對(duì)勞動(dòng)者和技術(shù)人員的知識(shí)和能力水平的要求越來(lái)越高。考試作為衡量人的能力的重要手段,在現(xiàn)代生活的地位進(jìn)一步提高,并深入到社會(huì)各個(gè)方面,各種各樣的學(xué)歷考試、資格證書考試層出不窮。同時(shí)
20、,Internet技術(shù)的發(fā)展是得考試的技術(shù)手段和載體發(fā)生了革命性的變化。Internet的開(kāi)放性和分布性的特點(diǎn)以及基于Internet的巨大計(jì)算能力使得考試突破了時(shí)間和空間的限制。網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,如遠(yuǎn)程教育和虛擬大學(xué)的出現(xiàn)等;使得基于Web的在線考試系統(tǒng)成為現(xiàn)實(shí)。基于Web的在線考試系統(tǒng)可以發(fā)揮網(wǎng)絡(luò)的優(yōu)勢(shì),建立大型、高效、共享的題庫(kù)和實(shí)現(xiàn)隨時(shí)隨地的考試,降低考試成本,減少人為的干擾。減輕教師的負(fù)擔(dān),節(jié)約人力,物力,和財(cái)力。</p
21、><p> 1.3課題研究思路和方法</p><p> 本次畢業(yè)設(shè)計(jì)首先分析網(wǎng)上報(bào)名和在線考試的相關(guān)功能,結(jié)合本次畢業(yè)設(shè)計(jì)的相關(guān)要求寫出需求分析;其次,綜合運(yùn)用以前所學(xué)的相關(guān)知識(shí)(包括計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、數(shù)據(jù)庫(kù)、網(wǎng)頁(yè)制作等),采用Asp+ access進(jìn)行本畢業(yè)設(shè)計(jì)的開(kāi)發(fā),使用 Macromedia Dreamweaver MX 2004來(lái)編輯相關(guān)頁(yè)面;在設(shè)計(jì)中以需求分析為基礎(chǔ),寫出
22、系統(tǒng)開(kāi)發(fā)計(jì)劃、實(shí)現(xiàn)流程及相關(guān)問(wèn)題的實(shí)現(xiàn)方法。</p><p><b> 2關(guān)鍵技術(shù)</b></p><p><b> 2.1 ASP</b></p><p> Microsoft Active Server Pages 即我們所稱的ASP,其實(shí)是一套微軟開(kāi)發(fā)的服務(wù)器端腳本環(huán)境。Active Server Page 是
23、創(chuàng)建動(dòng)態(tài)網(wǎng)頁(yè)的一個(gè)很好的工具,它起一種編程語(yǔ)言的作用,可以利用它編寫動(dòng)態(tài)產(chǎn)生HTML的程序代碼。因此,只要用戶瀏覽Web站點(diǎn)并請(qǐng)求一個(gè)ASP頁(yè),Web服務(wù)器就可以處理相應(yīng)的ASP代碼,生成HTML代碼,然后將它傳遞到用戶瀏覽器并顯示出網(wǎng)頁(yè)。ASP內(nèi)含于IIS3.0和4.0之中,通過(guò)ASP我們可以結(jié)合HTML網(wǎng)頁(yè)、ASP指令和ActiveX元件建立動(dòng)態(tài)、交互且高效的WEB服務(wù)器應(yīng)用程序。有了ASP就不必?fù)?dān)心客戶的瀏覽器是否能運(yùn)行所編寫的代
24、碼,因?yàn)樗械某绦蚨紝⒃诜?wù)器端執(zhí)行,包括所有嵌在普通HTML中的腳本程序。當(dāng)程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負(fù)擔(dān),大大提高了交互的速度。以下羅列了ASP所獨(dú)具的一些特點(diǎn)</p><p> (1)利用ASP可以實(shí)現(xiàn)突破靜態(tài)網(wǎng)頁(yè)的一些功能限制,實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè)技術(shù);</p><p> ?。?)ASP文件是包含在HTML代碼所組成的文件中的,易于
25、修改和測(cè)試; </p><p> ?。?)服務(wù)器上的ASP解釋程序會(huì)在服務(wù)器端制定ASP程序,并將結(jié)果以HTML格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽ASP所產(chǎn)生的網(wǎng)頁(yè); </p><p> ?。?)ASP提供了一些內(nèi)置對(duì)象,使用這些對(duì)象可以使服務(wù)器端腳本功能更強(qiáng)。例如可以從web瀏覽器中獲取用戶通過(guò)HTML表單提交的信息,并在腳
26、本中對(duì)這些信息進(jìn)行處理,然后向web瀏覽器發(fā)送信息; </p><p> (5)ASP可以使用服務(wù)器端ActiveX主鍵來(lái)執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫(kù)、訪問(wèn)文件系統(tǒng)等?!?</p><p>
27、(6)由于服務(wù)器是將ASP程序執(zhí)行的結(jié)果以HTML格式傳回客戶端瀏覽器,因此使用者不會(huì)看到ASP所編寫的原始程序代碼,可放置ASP程序代碼被竊取。 </p><p> ASP包含三方面含義:</p><p> (1)Active:ASP使用了微軟的ActiveX技術(shù)。ActiveX(COM)技術(shù)是現(xiàn)在Microsoft軟件的重要基礎(chǔ)。它采用封裝對(duì)象,程序調(diào)用對(duì)象的技術(shù),簡(jiǎn)化編程,加強(qiáng)程
28、序間合作。ASP本身封裝了一些基本組件和常用組件,有很多公司也開(kāi)發(fā)了很多實(shí)用組件。只要你可以在服務(wù)器上安裝這些組件,通過(guò)訪問(wèn)組件,你就可以快速、簡(jiǎn)易地建立自己的WEB應(yīng)用。</p><p> (2)Server:ASP運(yùn)行在服務(wù)器端。這樣就不必?fù)?dān)心瀏覽器是否支持ASP所使用的編程語(yǔ)言。ASP的編程語(yǔ)言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一個(gè)簡(jiǎn)集,會(huì)VB的人可以很方便的快速上手。然而N
29、etscape瀏覽器不支持客戶端的VBSCRIPT,所以最好不要在客戶端使用VBSCRIPT。而在服務(wù)器端,則無(wú)需考慮瀏覽器的支持問(wèn)題。Netscape瀏覽器也可以正常顯示ASP頁(yè)面。</p><p> ?。?)Pages:ASP返回標(biāo)準(zhǔn)的HTML頁(yè)面,可以正常地在常用的瀏覽器中顯示。瀏覽者查看頁(yè)面源文件時(shí),看到的是ASP生成的HTML代碼,而不是ASP程序代碼。這樣就可以防止別人抄襲程序。</p>
30、<p> 由此可以看出,ASP是在IIS下開(kāi)發(fā)WEB應(yīng)用的一種簡(jiǎn)單、方便的編程工具。在了解了VBSCRIPT的基本語(yǔ)法后,只需要清楚各個(gè)組件的用途、屬性、方法,就可以輕松編寫出自己的ASP系統(tǒng)。</p><p> 2.2 ACCESS</p><p> Access是Office系列軟件中用來(lái)專門管理數(shù)據(jù)庫(kù)的應(yīng)用軟件。所謂數(shù)據(jù)庫(kù)是指經(jīng)過(guò)組織的、關(guān)于特定主題或?qū)ο蟮男畔⒓?/p>
31、。數(shù)據(jù)庫(kù)管理系統(tǒng)分為兩類:文件管理系統(tǒng)和關(guān)系型管理系統(tǒng)。Access應(yīng)用程序就是一種功能強(qiáng)大且使用方便的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),一般也稱關(guān)系型數(shù)據(jù)庫(kù)管理軟件。它可運(yùn)行于各種Microsoft Windows系統(tǒng)環(huán)境中,由于它繼承了Windows的特性,不僅易于使用,而且界面友好,如今在世界各地廣泛流行。它并不需要數(shù)據(jù)庫(kù)管理者具有專業(yè)的程序設(shè)計(jì)水平,任何非專業(yè)的用戶都可以用它來(lái)創(chuàng)建功能強(qiáng)大的數(shù)據(jù)庫(kù)管理系統(tǒng)。本章將專門介紹Acces
32、s 2002(下面簡(jiǎn)稱為Access)的基本功能及其常用的操作,主要內(nèi)容包括創(chuàng)建和使用數(shù)據(jù)表,建立和使用查詢、窗體,以及數(shù)據(jù)表與其他數(shù)據(jù)文件之間的轉(zhuǎn)換等。</p><p> Access使用標(biāo)準(zhǔn)的SQL(Structured Query Language,結(jié)構(gòu)化查詢語(yǔ)言)作為它的數(shù)據(jù)庫(kù)語(yǔ)言,從而提供了強(qiáng)大的數(shù)據(jù)處理能力和通用性,使其成為一個(gè)功能強(qiáng)大而且易于使用的桌面關(guān)系型數(shù)據(jù)庫(kù)管理
33、系統(tǒng)和應(yīng)用程序生成器。 一個(gè)Access數(shù)據(jù)庫(kù)中可以包含表、查詢、窗體、報(bào)表、宏、模塊以及數(shù)據(jù)訪問(wèn)頁(yè)。不同于傳統(tǒng)的桌面數(shù)據(jù)庫(kù)(dbase、 FoxPro、Paradox), Access數(shù)據(jù)庫(kù)使用單一的*.mdb文件管理所有的信息,這種針對(duì)數(shù)據(jù)庫(kù)集成的最優(yōu)化文件結(jié)構(gòu)不僅包括數(shù)據(jù)本身,也包括了它的支持對(duì)象。</p><p> 此外,Access 2002還利用Office套件共享的
34、編程語(yǔ)言VBA(Visual Basic for Application)進(jìn)行高級(jí)操作控制和復(fù)雜的數(shù)據(jù)操作。</p><p><b> 3 數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明</b></p><p> 根據(jù)系統(tǒng)需要,我們?cè)跀?shù)據(jù)庫(kù)中建立了7張表,分別如下:</p><p><b> 3.1管理員信息表</b>
35、</p><p><b> 表1 admin表</b></p><p> 管理員信息表是用來(lái)存放管理員登錄的名稱,密碼,個(gè)人信息,權(quán)限等數(shù)據(jù)。</p><p> Adminpurview :c此字段的作用是存放普通管理員的權(quán)限,它的取值可以為以下幾種之一;</p><p> 0 代表?yè)碛兴袡?quán)限;</p&g
36、t;<p> 1代表維護(hù)試題的權(quán)限;</p><p> 2代表維護(hù)考生檔案;</p><p><b> 4代表維護(hù)考試計(jì)劃</b></p><p><b> 8代表維護(hù)課程檔案</b></p><p> 這里權(quán)限值使用1.2.4.8的原因是它們分別代表二進(jìn)制餓1.10.100
37、.1000.所以方便于多種權(quán)限的組合判斷,在賦予管理員多種權(quán)限時(shí),只需要把這些權(quán)限值相加即可,在判斷時(shí)只需要把權(quán)限值進(jìn)行相應(yīng)的“與”運(yùn)算就可判斷是否擁有某種權(quán)限。</p><p><b> 3.2課程檔案表</b></p><p> 課程檔案表主要用來(lái)存放考試課程名稱等數(shù)據(jù)。</p><p> 表2 course表</p>
38、<p> 3.3考生考試計(jì)劃表</p><p> 表3 prj_student</p><p> 本表用來(lái)存儲(chǔ)每個(gè)考生每次考試的成績(jī),開(kāi)始時(shí)間,結(jié)束時(shí)間等信息。</p><p> Mark:類型為整型,為考生在考試計(jì)劃中的成績(jī)。</p><p> State:類型為整型,為考試進(jìn)行的狀態(tài)0為沒(méi)有考試,1為已經(jīng)參加過(guò)考試,2
39、為正在進(jìn)行考試。</p><p> Endtime:類型為日期時(shí)間型,為考生的交卷時(shí)間。</p><p><b> 3.4考生表</b></p><p> 表4 student</p><p> 考生檔案表用來(lái)存放考生的個(gè)人信息 ,姓名,登錄名稱,密碼,性別,生日等數(shù)據(jù)</p><p>
40、 Studenttype:類型為整型,用來(lái)表示考生的類型,當(dāng)值為0時(shí)表示此考生已經(jīng)進(jìn)行報(bào)名申請(qǐng)但還沒(méi)有審批;當(dāng)值為1時(shí)表示此考生是已報(bào)名考生。</p><p><b> 3.5試題表</b></p><p> 表5 subject</p><p> 本表就是系統(tǒng)的題庫(kù),本系統(tǒng)中所用的試題都存放在此表中。</p><p
41、> Answer字段:類型為整型,用于存放本題的正確答案,此字段表示答案的方法是 :當(dāng)題目類型為選擇題時(shí),從低位二進(jìn)制到高位二進(jìn)制位分別代表1-6個(gè)選項(xiàng)的選擇情況。當(dāng)1時(shí)代表選定,0代表未選定;當(dāng)題目類型為是非題時(shí),1代表對(duì),0代表錯(cuò)</p><p><b> 3.6考試計(jì)劃表</b></p><p> 表 6 project</p><
42、;p> 本表是用來(lái)存放有關(guān)考試計(jì)劃的。如考試本次考試計(jì)劃的名稱,考試題型,數(shù)量,開(kāi)始時(shí)間,結(jié)束時(shí)間等信息。</p><p> 3.7考試過(guò)程控制表</p><p> 表7 prj_process</p><p> 本表的作用是用來(lái)管理考試的進(jìn)程,表內(nèi)主要存放考生正在進(jìn)行的考試計(jì)劃的考試題目與答題情況信息,本表只在考生考試過(guò)程中臨時(shí)存放信息,當(dāng)考生考試結(jié)
43、束時(shí)就會(huì)刪除相關(guān)的信息。</p><p> 4網(wǎng)上報(bào)名及考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 4.1功能模塊劃分</b></p><p> 系統(tǒng)實(shí)現(xiàn)了網(wǎng)上報(bào)名,前臺(tái)操作原理,后臺(tái)操作管理三大功能。系統(tǒng)結(jié)構(gòu)圖如圖4-1 所示</p><p><b> 4.1.1網(wǎng)上報(bào)名</b><
44、;/p><p> 考生登陸考試系統(tǒng)填寫資料申請(qǐng)?jiān)诰€報(bào)名,當(dāng)?shù)玫焦芾韱T的審批后即可登錄到考試中心,參加考試。</p><p> 4.1.2前臺(tái)操作管理</p><p> 前臺(tái)操作管理包括:在線考試、成績(jī)查詢、考試信息查詢、個(gè)人信息及密碼修改。</p><p> ?。?)在線考試:學(xué)生登錄以后可以任選時(shí)間進(jìn)行在線測(cè)試,考試結(jié)束后,系統(tǒng)會(huì)根據(jù)已有
45、的標(biāo)準(zhǔn)答案進(jìn)行在線判卷,考生可以立刻知道考試成績(jī)。</p><p> ?。?)成績(jī)查詢:學(xué)生可以在線查詢以前參加過(guò)的每門課程的考試相關(guān)信息。</p><p> ?。?)個(gè)人信息及密碼修改:當(dāng)考試信息有變動(dòng)時(shí),考生可以根據(jù)變動(dòng)的信息進(jìn)行相應(yīng)信息的修改。</p><p><b> 4.1.3后臺(tái)管理</b></p><p>
46、; 后臺(tái)管理模塊,主要功能有操作遠(yuǎn)管理、課程檔案管理、試題檔案管理、考試計(jì)劃管理、考生管理等</p><p> (1)操作員管理:操作員的類型包括超級(jí)管理員與普通管理員,操作員管理包括對(duì)管理員信息的添加,刪除,修改等操作。</p><p> 圖4-1 系統(tǒng)結(jié)構(gòu)圖</p><p> ?。?)課程檔案管理:主要用來(lái)對(duì)考試試題和考試計(jì)劃進(jìn)行分課程管理,課程管理模塊主
47、要功能有:添加,修改,刪除課程信息。</p><p> ?。?)考試計(jì)劃管理:考試計(jì)劃實(shí)際上相當(dāng)于考試試卷,管理員如果將要組織一次考試的話,就需要填寫一條考試計(jì)劃,考試計(jì)劃管理模塊的主要功能有:添加,修改,刪除考試計(jì)劃。</p><p> (4)試題檔案管理:本系統(tǒng)中試題本分為 :?jiǎn)芜x題,多選題,是非題三種,試題檔案管理模塊的主要功能有:添加,修改,刪除等操作。</p>&
48、lt;p> ?。?)考生檔案管理:分為兩部分,一部分是在后臺(tái)管理員進(jìn)行管理,后臺(tái)管理員管理的功能有:考生檔案的添加,修改,刪除;對(duì)已提交注冊(cè)申請(qǐng)的考生進(jìn)行審批。一部分是在前臺(tái)由考生本人進(jìn)行管理,前臺(tái)考生對(duì)檔案管理的功能有;修改自己的基本信息,修改登陸密碼。</p><p> 4.2各功能模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 4.2.1新生報(bào)名</b>&
49、lt;/p><p> 如果沒(méi)有參加報(bào)名的考生想要參加考試,可以進(jìn)入在線報(bào)名與考試系統(tǒng)進(jìn)行在線報(bào)名,在線提交相應(yīng)信息,然后等待管理員的資格審批。只有審批后的考生才能參加考試。完成此功能的主要頁(yè)面有student_reg.asp, student_regpost.asp效果圖如圖4-2所示。</p><p> 圖4-2 考生在線報(bào)名頁(yè)面</p><p><b>
50、; 4.2.2在線考試</b></p><p> 考生登陸考試系統(tǒng)時(shí),系統(tǒng)根據(jù)登錄名和密碼判斷考生是否為報(bào)名后的考生,如果沒(méi)有報(bào)名則提示考生先注冊(cè),注冊(cè)完成后需要管理員審核考生是否符合條件,審核通過(guò)后考生才能參加考試。</p><p> 考生登錄后,可以選擇相應(yīng)的試題進(jìn)行在線考試。考試過(guò)程中考生的答案保存在考試過(guò)程控制表(prj_process)中。自動(dòng)生成試卷函數(shù)根據(jù)考
51、試計(jì)劃中的設(shè)置,從試題庫(kù)中隨機(jī)按要求組成試卷并存入考試過(guò)程控制表(prj_process)中。</p><p> 考試結(jié)束采取自動(dòng)交卷和到了規(guī)定的時(shí)間系統(tǒng)強(qiáng)制交卷的有機(jī)結(jié)合的方式予以實(shí)現(xiàn)。系統(tǒng)根據(jù)管理員制定好的答案進(jìn)行判斷,自動(dòng)給出考生的考試成績(jī)。</p><p> 在線考試主要頁(yè)面有function.asp,考試頁(yè)面testing.asp,保存答案頁(yè)面test_saveanswer.
52、asp,考試結(jié)束顯示結(jié)果頁(yè)面testfinish.asp,成績(jī)查詢頁(yè)面student_markquery.asp .</p><p> 自動(dòng)生成試卷的主要代碼片段如下:</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'判斷當(dāng)前題庫(kù)內(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> '使用線性探測(cè)解決沖突問(wèn)題</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> 考試過(guò)程中對(duì)考生答案的保存的主要代碼片段如下:</p>
73、<p><b> <%</b></p><p> dim rsSaveAnswer,strSqlSaveAnswer,intAnswer,strAction,intID'考生答案,動(dòng)作(主要用于多選題,決定是選中還是取消),試題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")‘取得詳細(xì)的題目,考生及考生答題狀況信息。</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'驗(yàn)證此答案是否在有效的時(shí)間內(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)在不是考試時(shí)間,不能進(jì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成績(jī)查詢</b>&
85、lt;/p><p> 考生登陸系統(tǒng)后 考生可以使用成績(jī)查詢功能進(jìn)行以往考試科目的成績(jī)查詢。考生登錄系統(tǒng)后首先驗(yàn)證考生的登錄狀態(tài),只有登錄后的考生才能夠進(jìn)行以往考試成績(jī)的查詢,如果考生沒(méi)有登錄則自動(dòng)轉(zhuǎn)到考生登錄頁(yè)面student_login.asp。要求考生進(jìn)行登錄驗(yàn)證。</p><p><b> 其主要代碼如下: </b></p><p>
86、if checkStudentLogin() = false then'檢測(cè)考生登錄狀態(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> '驗(yàn)證日期輸入是否正確</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>起始日期格式錯(cuò)誤</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é)束日期格式錯(cuò)誤</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'如果通過(guò)驗(yàn)證則顯示出查詢結(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個(gè)人信息及密碼修改</p&g
97、t;<p> 考生登陸系統(tǒng)后可以進(jìn)行考生個(gè)人的信息修改,考生必須先登錄系統(tǒng)然后才能進(jìn)行相應(yīng)的操作,考生能夠修改自己的姓名,出生日期,email,身份證號(hào)碼,但是必須滿足系統(tǒng)的格式要求。如果輸入中有不符合系統(tǒng)要求,系統(tǒng)會(huì)提示修改失敗并且給出失敗原因。其效果圖如圖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> '驗(yàn)證考生
99、提交的信息是否合法</p><p> if trim(request.form("studentname")) = "" then</p><p> strErr = strErr & "<li>真實(shí)姓名為空。</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> '如果通過(guò)驗(yàn)證則進(jìn)行考生信息的修改并顯示成功信息</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> '驗(yàn)證考生記錄是否存在</p><p><b> %></b></p><p> 4.2.5操作員管理</p><p> 操作員管理:操作員的類型包括超級(jí)管理員與普通管理員,超級(jí)
109、管理員管理包括對(duì)管理員登陸系統(tǒng)的密碼修改。普通管理員的管理包括,管理員的添加,登陸密碼修改,權(quán)限設(shè)置等操作。如圖4-4</p><p> 圖4-4 操作員管理頁(yè)面</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>超級(jí)管理不能被刪除!</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、檔案管理:后臺(tái)管理員登錄后進(jìn)入課程管理界面如圖4-4所示,首先系統(tǒng)會(huì)判斷登錄的管理員具備課程管理權(quán)限,超級(jí)管理員具有全部權(quán)限。如果沒(méi)有次項(xiàng)權(quán)限則提示管理員沒(méi)有此權(quán)限,不能進(jì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>請(qǐng)選擇要?jiǎng)h除的試題!</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> 修改課程:?jiǎn)螕粢薷牡恼n程右側(cè)的修改“鏈接后,此課程信息會(huì)出現(xiàn)在”添加/修改表格內(nèi),修改
122、名稱后單擊“更新”按鈕即可完成修改。</p><p> 刪除課程:?jiǎn)螕舸薷恼n程的右側(cè)的“刪除”鏈接即可。</p><p> 4.2.7試題檔案管理</p><p> 試題檔案管理:本系統(tǒng)中試題本分為 :?jiǎn)芜x題,多選題,是非題三種,管理員可以進(jìn)行試題的添加效果圖如圖4-5,修改和刪除。管理員要進(jìn)行試題管理首先也要判斷管理員是否具有試題管理的權(quán)限,如果有此權(quán)限才
123、能進(jìn)行試題管理如果沒(méi)有系統(tǒng)會(huì)自動(dòng)提示管理員不具備此權(quán)限不能進(jìn)行相應(yīng)的操作。其功能主要由admin_subject.asp頁(yè)面完成。</p><p><b> 圖4-6 添加試題</b></p><p> 其主要代碼片段如下:</p><p> set rsSubject = server.createobject("ADODB.
124、Recordset")‘創(chuàng)建記錄集對(duì)象</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. 本站所有資源如無(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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- asp網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(源代碼+論文)
- asp網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(源代碼+論文)
- H2003215058_魯旭杰_網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc
- 網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- H2003215058_魯旭杰_網(wǎng)上報(bào)名及在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc
- 網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 等級(jí)考試網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 社會(huì)考試通用網(wǎng)上報(bào)名及編排系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- nit考試網(wǎng)上報(bào)名與成績(jī)查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于jsp 網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- PETS網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- NIT考試網(wǎng)上報(bào)名與成績(jī)查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)----網(wǎng)上在線考試系統(tǒng)設(shè)計(jì)
- 基于Servlet的網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 中職院校技能考試網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于UML的網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于Web服務(wù)的網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)----在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論