2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩39頁(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、<p>  學(xué)生畢業(yè)論文(設(shè)計(jì))</p><p>  題目:網(wǎng)絡(luò)在線考試系統(tǒng)設(shè)計(jì)</p><p>  畢業(yè)論文(設(shè)計(jì))開題報(bào)告表</p><p>  論文(設(shè)計(jì))來(lái)源:導(dǎo)師課題、社會(huì)實(shí)踐、自選、其他</p><p>  論文(設(shè)計(jì))類型:A—理論研究;B—應(yīng)用研究;C—軟件設(shè)計(jì)等;</p><p> 論文(設(shè)

2、計(jì))名稱網(wǎng)絡(luò)在線考試系統(tǒng)</p><p> 論文(設(shè)計(jì))來(lái)源論文(設(shè)計(jì))類型軟件設(shè)計(jì)導(dǎo) 師</p><p> 學(xué) 生 姓 名學(xué)  號(hào)20041713專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)</p><p> 文獻(xiàn)綜述(包括調(diào)研資料的準(zhǔn)備和收集)現(xiàn)在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面,傳統(tǒng)的考試方式必將面臨著變革,而web網(wǎng)絡(luò)考試則是一個(gè)很重要的方向。基于Web技術(shù)的網(wǎng)絡(luò)考試系統(tǒng)可以借助

3、于遍布全球的因特網(wǎng)進(jìn)行,因此考試既可以在本地進(jìn)行,也可以在異地進(jìn)行,大大拓展了考試的靈活性。試卷可以根據(jù)題庫(kù)中的內(nèi)容即時(shí)生成,可避免考試前的壓題;而且可以采用大量標(biāo)準(zhǔn)化試題,從而使用計(jì)算機(jī)判卷,大大提高閱卷效率;還可以直接把成績(jī)送到數(shù)據(jù)庫(kù)中,進(jìn)行統(tǒng)計(jì)、排序等操作。所以現(xiàn)在較好的考試方法為網(wǎng)絡(luò)考試,試題內(nèi)容放在服務(wù)器上,考生通過(guò)姓名、準(zhǔn)考證號(hào)碼和口令進(jìn)行登錄,考試答案也存放在服務(wù)器中,這樣考試的公平性、答案的安全性可以得到有效的保證。利用

4、網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用Active Server Page技術(shù),我開發(fā)了基于B/S模式多用戶在線考試系統(tǒng)這一程序。它運(yùn)用方便、操作簡(jiǎn)單,效率很高?,F(xiàn)階段雖然只實(shí)現(xiàn)了試卷的客觀題部分,但已具有用戶注冊(cè)、在線考試、在線評(píng)分、在線查詢、試題錄入、修改題庫(kù)、用戶管理、科目管理等重要功能,也就是說(shuō)實(shí)現(xiàn)了真正的無(wú)紙化考試,滿足任何授權(quán)的考生</p><p> 選題意義(包括

5、選題的理論價(jià)值和實(shí)踐意義)現(xiàn)在學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過(guò)五個(gè)步驟,即人工出卷、考生考試、人工閱卷、成績(jī)?cè)u(píng)估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會(huì)越來(lái)越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說(shuō)傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,如遠(yuǎn)程教育和虛擬大學(xué)的出現(xiàn)等等,且這些應(yīng)用正逐步深入

6、到千家萬(wàn)戶。人們迫切要求利用這些技術(shù)來(lái)進(jìn)行在線考試,以減輕教師的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從而使考試更趨于公證!客觀!更加激發(fā)學(xué)生的學(xué)習(xí)興趣。例如目前許多國(guó)際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。為了適應(yīng)新形勢(shì)的發(fā)展,目前,國(guó)內(nèi)有很多公司團(tuán)體研究開發(fā)了許多基于web的考試系統(tǒng)。在英國(guó),已經(jīng)實(shí)現(xiàn)了英語(yǔ)資格考試的網(wǎng)上學(xué)習(xí)和水平認(rèn)證全過(guò)程。在線考試是現(xiàn)階段研究開發(fā)的一個(gè)熱點(diǎn)。它是建立在國(guó)際互聯(lián)網(wǎng)上

7、的應(yīng)用系統(tǒng),客戶端的配置可以極為簡(jiǎn)單,使考試不受地域的局限。一個(gè)完備的在線考試系統(tǒng)可以使用戶在網(wǎng)上學(xué)習(xí)過(guò)后</p><p> 研究方法(包括研究思路及技術(shù)路線)本系統(tǒng)在Windows平臺(tái)下,運(yùn)用ASP技術(shù)和SQL Server數(shù)據(jù)庫(kù)技術(shù)開發(fā),分為前后臺(tái),前臺(tái)給學(xué)生使用,后臺(tái)主要給老師用。前臺(tái)主要包括信息注冊(cè)、考生登陸、信息查詢及修改、在線考試、成績(jī)查詢。后臺(tái)主要是管理部分,包括管理員登陸、系統(tǒng)管理模塊、考生管理模

8、塊、題庫(kù)管理模塊、監(jiān)控中心模塊。系統(tǒng)管理模塊完成密碼更改、添加管理員、刪除管理員功能,考生管理模塊完成考生注冊(cè)、考生信息查詢功能,題庫(kù)管理模塊完成試題錄入、試題修改功能,監(jiān)控中心模塊完成考試控制功能。</p><p> 時(shí)間進(jìn)度(任務(wù)完成的階段內(nèi)容及時(shí)間安排)第一階段:收集整理相關(guān)資料,確定畢業(yè)設(shè)計(jì)題目,做好畢業(yè)設(shè)計(jì)開題準(zhǔn)備及寫好開題報(bào)告。(2007年11月~2007年12月)第二階段:畢業(yè)設(shè)計(jì)總體設(shè)計(jì)和系統(tǒng)功能

9、詳細(xì)設(shè)計(jì)(2007年12月~2008年1月)第三階段:系統(tǒng)實(shí)現(xiàn)及調(diào)試運(yùn)行。(2007年1月~2008年4月)第三階段:撰寫畢業(yè)設(shè)計(jì)論文初稿。(2008年4月)第四階段:畢業(yè)設(shè)計(jì)論文修改、定稿。(2008年5月)</p><p> 指導(dǎo)教師意見(jiàn)指導(dǎo)教師簽名: 日期:</p><p> 教研室意見(jiàn)教研室主任簽名: 日期:</p>

10、;<p> 院(系)意見(jiàn)院(系)領(lǐng)導(dǎo)簽名: 日期:院(系)蓋章</p><p><b>  目 錄</b></p><p>  原創(chuàng)性及知識(shí)產(chǎn)權(quán)聲明……………………………………………………………Ⅰ</p><p>  開題報(bào)告表…………………………………………………………………………Ⅱ</p>

11、<p>  中文摘要及關(guān)鍵詞…………………………………………………………………Ⅵ</p><p>  英文摘要及關(guān)鍵詞…………………………………………………………………Ⅶ</p><p>  一、ASP技術(shù)簡(jiǎn)介………………………………………………………………… 1</p><p> ?。ㄒ唬〢SP文件………………………………………………………………1<

12、;/p><p> ?。ǘ〢SP的工作原理………………………………………………………1 </p><p>  (三)ASP內(nèi)建對(duì)象…………………………………………………………2</p><p> ?。ㄋ模〢SP外掛對(duì)象…………………………………………………………3</p><p> ?。ㄎ澹¦eb數(shù)據(jù)庫(kù)訪問(wèn)……………………………………………………

13、…3</p><p>  二、系統(tǒng)分析和功能模塊設(shè)計(jì)……………………………………………………5</p><p>  三、數(shù)據(jù)庫(kù)設(shè)計(jì)……………………………………………………………………7</p><p>  四、界面設(shè)計(jì)與應(yīng)用程序?qū)崿F(xiàn)……………………………………………………9</p><p>  (一)前臺(tái)界面……………………………………………

14、…………………9</p><p> ?。ǘ┕芾斫缑妗?2</p><p> ?。ㄈ┲饕绦?qū)崿F(xiàn)…………………………………………………………15</p><p>  五、系統(tǒng)測(cè)試………………………………………………………………………27</p><p>  六、軟件運(yùn)行環(huán)境……………………………

15、……………………………………30</p><p>  七、小結(jié)……………………………………………………………………………31</p><p>  參考文獻(xiàn)……………………………………………………………………………32</p><p>  致謝…………………………………………………………………………………33</p><p><b>

16、  摘 要</b></p><p>  隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,特別是基于Web的數(shù)據(jù)庫(kù)應(yīng)用技術(shù)的逐漸完善和成熟,使得Web數(shù)據(jù)庫(kù)技術(shù)已成為一種主流的解決方案而應(yīng)用于電子商務(wù)、遠(yuǎn)程教育、網(wǎng)絡(luò)課堂等各個(gè)領(lǐng)域。在線考試系統(tǒng)是隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,應(yīng)運(yùn)而生的一種非常實(shí)用的系統(tǒng),現(xiàn)在很多國(guó)家的大學(xué)和社會(huì)其他部門都已開設(shè)了遠(yuǎn)程教育、考試系統(tǒng)等等。</p><p>  本文在

17、分析網(wǎng)絡(luò)考試的發(fā)展及現(xiàn)有模式的基礎(chǔ)上,結(jié)合計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展和素質(zhì)教育的要求,提出了計(jì)算機(jī)網(wǎng)絡(luò)自適應(yīng)考試的模式,并在技術(shù)實(shí)現(xiàn)上進(jìn)行了詳細(xì)的分析。本系統(tǒng)是在Windows XP下,以IIS4.1(Internet Information Server)網(wǎng)絡(luò)信息服務(wù)為應(yīng)用服務(wù)器,選擇ASP、SQL Server 2000開發(fā)在線考試系統(tǒng),采用Web技術(shù)實(shí)現(xiàn),Web技術(shù)超越了傳統(tǒng)的“客戶機(jī)/服務(wù)器”的兩層結(jié)構(gòu),采用的是三層體系(B/S)結(jié)構(gòu)

18、:用戶端/服務(wù)器端/數(shù)據(jù)庫(kù),因此Web結(jié)構(gòu)有著更好的安全性,在用戶機(jī)上不需要安裝任何應(yīng)用程序。本系統(tǒng)實(shí)現(xiàn)在線注冊(cè)、隨機(jī)生成試卷、在線管理試卷、在線評(píng)分等功能,同時(shí)該系統(tǒng)避免了傳統(tǒng)在線考試效率低,可維護(hù)性不高的缺點(diǎn)。</p><p>  關(guān)鍵詞:ASP SQL Server 2000 B/S結(jié)構(gòu) Web技術(shù)</p><p><b>  Abstract</b></

19、p><p>  With computer technology and the rapid development of Internet technology, especially Web-based database application technology gradually improve and mature, and making Web database technology has becom

20、e a mainstream solution and applied to e-commerce, distance education, classroom, and other network field. Online examination system, with the rapid development of network technology, born a very practical system, many c

21、ountries, universities and other sectors of society have created a long-distan</p><p>  Based on the analysis of network test and the development of the existing model on the basis of the development of comp

22、uter network technology and the requirements of quality education, I advance a computer network adaptive test mode, and the technical realization of a detailed analysis. The system is Windows XP, to IIS4.1 (Internet Info

23、rmation Server) network information services for the application server, select ASP, SQL Server 2000, the development of online exam system using Web technology,</p><p>  Keywords:ASP SQL Server 2000 B/S St

24、ructure  Web Technology </p><p><b>  在線考試系統(tǒng)</b></p><p><b>  一、ASP技術(shù)簡(jiǎn)介</b></p><p>  ASP(Active Server Pages,活動(dòng)服務(wù)器頁(yè)面)是微軟公司于1996年11月推出的一種Web應(yīng)用程序開發(fā)技術(shù)。它提供了一個(gè)在服務(wù)器執(zhí)

25、行腳本指令的環(huán)境,使用它可以創(chuàng)建動(dòng)態(tài)Web頁(yè)面,或者生成功能強(qiáng)大的、交互的Web應(yīng)用程序。它的源代碼均在服務(wù)器端運(yùn)行,運(yùn)行的結(jié)果以HTML代碼的形式輸出到客戶端。利用ASP不僅能夠產(chǎn)生動(dòng)態(tài)的、交互的、高性能的Web應(yīng)用程序,而且可以進(jìn)行復(fù)雜的數(shù)據(jù)庫(kù)操作。ASP是目前開發(fā)動(dòng)態(tài)網(wǎng)頁(yè)的一種常用技術(shù),主要運(yùn)行于Windows NT或Windows 2000 Server平臺(tái),其Web服務(wù)器為IIS4.0/5.0。</p><

26、p><b> ?。ㄒ唬〢SP文件</b></p><p>  ASP文件是以.asp為擴(kuò)展名的文本文件,該文件可以包含以下內(nèi)容:</p><p>  純文本:文本時(shí)直接顯示給用戶的信息,主要在用戶瀏覽器中顯示這些 信息,是簡(jiǎn)單的ASCII文本。</p><p>  HTML標(biāo)記:HTML使用定界符小于號(hào)“<”和

27、“>”來(lái)區(qū)別于其他內(nèi)容。</p><p>  ASP語(yǔ)句:ASP語(yǔ)句包括了Web服務(wù)器上運(yùn)行ASP的一些指令,通過(guò)Web服務(wù)器上的動(dòng)態(tài)庫(kù)asp.dll執(zhí)行各種ASP命令。每個(gè)ASP的語(yǔ)句都在“<%”和“%>”限定符號(hào)中。 </p><p>  腳本語(yǔ)言:ASP內(nèi)嵌了VBScript腳本和JavaScript腳本。</p><p> ?。ǘ〢SP的

28、工作原理</p><p>  當(dāng)瀏覽器向Web服務(wù)器請(qǐng)求調(diào)用ASP文件時(shí),就啟動(dòng)了ASP。瀏覽器將這個(gè)ASP的請(qǐng)求(HTML請(qǐng)求)發(fā)送到IIS,Web服務(wù)器接受這個(gè)請(qǐng)求并調(diào)入正確的ASP文件,Web服務(wù)器將這個(gè)文件發(fā)送到一個(gè)叫asp.dll的文件中。該文件負(fù)責(zé)獲得一個(gè)ASP文件并對(duì)該文件內(nèi)所有服務(wù)器端的代碼進(jìn)行解析,它會(huì)在該文件中查找所有的腳本代碼,將這些腳本代碼發(fā)送到合適的腳本引擎(即腳本解釋器),然后使用如V

29、BScript等腳本語(yǔ)言進(jìn)行解釋。腳本代碼的運(yùn)行結(jié)果重新結(jié)合該ASP文件中原有的其他文件如文本內(nèi)容及HTML代碼,Web服務(wù)器將最終生成的頁(yè)面發(fā)送到客戶端的瀏覽器中進(jìn)行顯示。如果沒(méi)有查找到任何腳本代碼,則會(huì)通知IIS直接將這些文件發(fā)送到客戶端。若腳本指令中含有訪問(wèn)數(shù)據(jù)庫(kù)的請(qǐng)求,就通過(guò)ODBC與后臺(tái)數(shù)據(jù)庫(kù)相連,由數(shù)據(jù)庫(kù)訪問(wèn)組件ADO執(zhí)行訪問(wèn)數(shù)據(jù)庫(kù)操作,如下圖1-1所示。</p><p>  圖1-1 ASP工作原

30、理圖</p><p> ?。ㄈ〢SP內(nèi)建對(duì)象</p><p>  在網(wǎng)絡(luò)程序的訪問(wèn)過(guò)程中,瀏覽器的操作者需要與服務(wù)器之間交換各種數(shù)據(jù)。ASP通過(guò)其提供的一些內(nèi)建對(duì)象,使用戶更容易收集通過(guò)瀏覽器請(qǐng)求發(fā)送的信息、響應(yīng)瀏覽器以及存儲(chǔ)用戶信息。</p><p>  表1-1 ASP主要內(nèi)置對(duì)象功能一覽表</p><p>  (四)ASP外掛對(duì)象&

31、lt;/p><p>  ASP在存取數(shù)據(jù)庫(kù)時(shí),經(jīng)常結(jié)合使用ADO(ActiveX Data Object)技術(shù),以實(shí)現(xiàn)存取數(shù)據(jù)庫(kù)的功能。這樣就允許在網(wǎng)頁(yè)上不但可以建立數(shù)據(jù)庫(kù)的網(wǎng)頁(yè)內(nèi)容,還可以在網(wǎng)頁(yè)里執(zhí)行SQL操作,用戶可以在網(wǎng)頁(yè)上對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢、刪除及新增等操作。ADO里的主要對(duì)象如下表。</p><p>  表1-2 ASP主要外掛對(duì)象功能一覽表</p><p>

32、 ?。ㄎ澹¦eb數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)</p><p>  隨著Internet技術(shù)的飛速發(fā)展,人們不再滿足只在Web瀏覽器上獲取靜態(tài)信息,于是基于Web方式的數(shù)據(jù)庫(kù)技術(shù)營(yíng)運(yùn)而生。ADO是微軟提供的一種面向?qū)ο蟮臄?shù)據(jù)庫(kù)訪問(wèn)技術(shù)。 ADO是ASP內(nèi)置的重要組件,通常ADO可以使用不同的數(shù)據(jù)接口訪問(wèn)數(shù)據(jù)庫(kù)。下圖是ASP通過(guò)ADO來(lái)訪問(wèn)SQL SERVER 數(shù)據(jù)庫(kù)的具體流程:</p><p>  圖1-

33、2 ASP 訪問(wèn)數(shù)據(jù)庫(kù)流程</p><p>  ADO把絕大部分的數(shù)據(jù)庫(kù)操作封裝在其內(nèi)部的7個(gè)對(duì)象中,在ASP網(wǎng)頁(yè)中可以通過(guò)這些對(duì)象的調(diào)用來(lái)方便地完成相應(yīng)的數(shù)據(jù)庫(kù)操作。(其具體對(duì)象見(jiàn)表1-2)。ADO還提供了4個(gè)數(shù)據(jù)集合:</p><p>  表1-3 ADO數(shù)據(jù)集合</p><p>  二、系統(tǒng)分析和功能模塊設(shè)計(jì)</p><p>  在

34、線考試系統(tǒng)采用網(wǎng)絡(luò)編程語(yǔ)言—ASP語(yǔ)言并結(jié)合功能強(qiáng)大的SQL Server 數(shù)據(jù)庫(kù)技術(shù)。系統(tǒng)采用B/S模式建立題庫(kù),并設(shè)置隨機(jī)抽題和自動(dòng)判分功能。其網(wǎng)絡(luò)應(yīng)用原理如下圖:</p><p>  圖2-1在線考試系統(tǒng)網(wǎng)絡(luò)應(yīng)用原理</p><p>  在線考試系統(tǒng)包括兩個(gè)功能模塊,前臺(tái)考試模塊和后臺(tái)管理模塊。其具體功能模塊如下圖:</p><p>  圖2-2在線考試系統(tǒng)功

35、能模塊劃分</p><p>  整個(gè)系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計(jì)如下圖: </p><p><b>  三、 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  根據(jù)系統(tǒng)功能設(shè)計(jì)的要求以及功能模塊的劃分,可以列出以下5個(gè)主要的數(shù)據(jù)表,以及表中的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)。</p><p>  管理員信息數(shù)據(jù)表(Admin)</p><

36、;p>  學(xué)生基本信息數(shù)據(jù)表(Student)</p><p>  試題表 (Test)</p><p>  成績(jī)表(Score)</p><p>  試題信息表(Testinfo)</p><p>  四、界面設(shè)計(jì)與應(yīng)用程序?qū)崿F(xiàn)</p><p>  在Test目錄下有一個(gè)文件夾images,它是用來(lái)存放程序中使

37、用到的圖片的,程序所有文件都放在test目錄下,下面用表格列舉一下主要的文件及功能。</p><p>  表4-1 在線考試系統(tǒng)主要文件的功能</p><p><b> ?。ㄒ唬┣芭_(tái)界面</b></p><p>  打開瀏覽器,在地址欄輸入http://localhost/mytest/default.asp,按回車后,就會(huì)看到如圖4-1所示

38、效果。</p><p>  圖4-1在線考試系統(tǒng)功首頁(yè)面</p><p>  如果你是新用戶,則先要注冊(cè),單擊“注冊(cè)”按鈕,就會(huì)彈出如圖4-2所示的注冊(cè)頁(yè)面。</p><p><b>  圖4-2注冊(cè)頁(yè)面</b></p><p>  圖4-3注冊(cè)成功提示框</p><p>  假設(shè)我們注冊(cè)了一個(gè)學(xué)

39、生,姓名和密碼都為test 在注冊(cè)頁(yè)面中輸入,單擊注冊(cè),會(huì)彈出注冊(cè)成功對(duì)話框,如圖4-3。這時(shí)你可以登錄考試系統(tǒng),在姓名和密碼文本框中輸入“test”,然后單擊登錄,進(jìn)入了考生主頁(yè)面,如圖4-4所示。</p><p>  圖4-4 考生主頁(yè)面</p><p>  在這里,點(diǎn)擊“考生信息查詢及修改”進(jìn)入考生信息查詢及修改,在這個(gè)頁(yè)面你可以查詢信息,修改信息。點(diǎn)擊“在線考試”進(jìn)入在線考試界面,

40、如圖4-5到4-7所示,</p><p>  圖4-5 選擇科目頁(yè)面 </p><p><b>  圖4-6 考試頁(yè)面</b></p><p>  圖4-7考試結(jié)果頁(yè)面</p><p><b> ?。ǘ┕芾斫缑?lt;/b></p><p>  單擊界面中的“管理”按鈕,進(jìn)入管理

41、員登錄頁(yè)面,在賬號(hào)和密碼中輸入admin后登錄進(jìn)入后臺(tái)主頁(yè)面如圖所示。</p><p>  圖4-8 管理員登錄頁(yè)面</p><p><b>  圖4-9 管理頁(yè)面</b></p><p>  在后臺(tái)主頁(yè)面中尼可以選擇管理學(xué)生、管理考試科目,管理管理員、查看學(xué)生及成績(jī)和添加試題。</p><p>  圖4-10 管理學(xué)生

42、頁(yè)面</p><p>  圖4-11 管理管理員頁(yè)面</p><p>  圖4-12管理科目頁(yè)面</p><p>  圖4-13成績(jī)查看頁(yè)面</p><p>  圖4-14試題管理頁(yè)面</p><p><b> ?。ㄈ┲饕绦?qū)崿F(xiàn)</b></p><p>  1、數(shù)據(jù)庫(kù)連

43、接文件conn.asp</p><p><b>  <%</b></p><p>  dim conn </p><p>  dim connstr</p><p>  call conn_init()</p><p>  sub conn_init()</p><p

44、>  connstr="provider=SQLOLEDB.1;server=localhost; database=data;uid=sa;"</p><p>  set conn=server.createobject("ADODB.CONNECTION")</p><p>  if err.number<>0 then <

45、;/p><p><b>  err.clear</b></p><p>  set conn=nothing</p><p>  response.write "數(shù)據(jù)庫(kù)連接出錯(cuò)!<a href=""javascript:history.back();"">返回</a>&quo

46、t;</p><p>  Response.End</p><p><b>  else</b></p><p>  conn.open connstr</p><p>  if err then </p><p><b>  err.clear</b></p>

47、<p>  set conn=nothing</p><p>  response.write"數(shù)據(jù)庫(kù)連接出錯(cuò)!<a href=""javascript:history.back();"">返回</a>"</p><p>  Response.End </p><p>&

48、lt;b>  end if</b></p><p><b>  end if </b></p><p><b>  end sub</b></p><p>  sub dbclose()</p><p>  conn.close</p><p>  se

49、t conn=nothing</p><p><b>  end sub</b></p><p>  function chkStr(str)</p><p>  chkStr=replace(trim(str),"'","''")</p><p>  en

50、d function</p><p><b>  %></b></p><p>  2、考生登錄界面實(shí)現(xiàn)</p><p>  <!--#include file="conn.asp"--></p><p><b>  <%</b></p>&

51、lt;p>  if Request.ServerVariables("http_method")="POST" then '學(xué)生登錄的處理</p><p>  dim rs,sql</p><p>  set rs = server.createobject("adodb.recordset")</p>

52、<p>  sql="select* from student where stu_name='" & chkStr(Request("name")) & "'"</p><p>  rs.open sql,conn,1,1</p><p>  if err.number<>

53、;0 then </p><p>  response.write "數(shù)據(jù)庫(kù)操作失?。?lt;a href=""javascript:history.back();"">返回</a>"&err.description</p><p><b>  rs.close</b></p&

54、gt;<p>  call dbclose</p><p>  response.End()</p><p><b>  else</b></p><p>  if not rs.eof then</p><p>  if chkStr(Request("pwd"))=trim(rs(&

55、quot;stu_pass")) then</p><p>  session("studentname")=trim(rs("stu_name"))</p><p><b>  rs.close</b></p><p>  call dbclose</p><p>  

56、Response.Redirect "stumain.asp"</p><p><b>  end if</b></p><p><b>  end if</b></p><p>  session("studentname")=""</p><

57、;p>  response.write "<center>對(duì)不起,請(qǐng)輸入正確的用戶名和密碼。</center><a href=""javascript:history.back();"">返回</a>"</p><p><b>  rs.close</b></p>

58、<p>  call dbclose</p><p>  response.End()</p><p><b>  end if </b></p><p><b>  end if</b></p><p><b>  %></b></p><

59、p>  3、管理員登錄實(shí)現(xiàn) </p><p>  <% option explicit %></p><p>  <!--#include file="conn.asp"--></p><p><b>  <% </b></p><p>  if request(&

60、quot;m")="m" then '管理員登錄的處理</p><p>  session("name")=trim(request("name1"))</p><p>  session("password")=trim(request("password1"))&

61、lt;/p><p>  dim rs,sql</p><p>  set rs = server.createobject("adodb.recordset")</p><p>  sql="select * from admin where adminname='" & chkStr(request("

62、;name1")) & "'"</p><p>  rs.open sql,conn,1,1</p><p>  'response.write session("name")</p><p>  if err.number<>0 then </p><p>

63、;  response.write "數(shù)據(jù)庫(kù)操作失敗:"&err.description</p><p><b>  else</b></p><p>  if not rs.eof then</p><p>  if rs("adminpass")=chkStr(request("pa

64、ssword1")) then</p><p><b>  rs.close</b></p><p>  session("name")=trim(request("name1"))</p><p>  set rs=nothing</p><p>  call dbcl

65、ose()</p><p>  Response.Redirect "primarypage.asp"</p><p><b>  end if</b></p><p><b>  end if</b></p><p>  response.write "<fon

66、t class=text15>對(duì)不起,請(qǐng)輸入正確的管理員帳號(hào)和密碼。如果您不是管理員,請(qǐng)立即放棄!</font><br>"</p><p><b>  rs.close</b></p><p><b>  end if</b></p><p><b>  end if<

67、;/b></p><p><b>  %></b></p><p><b>  4、考試界面實(shí)現(xiàn)</b></p><p>  首先是一個(gè)包含文件,實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的關(guān)聯(lián),下面是頁(yè)面跳轉(zhuǎn)函數(shù)</p><p>  <script language="JavaScript"

68、;></p><p>  function finishTest()</p><p><b>  {</b></p><p>  form1.action="result.asp";</p><p>  form1.method="post";</p><

69、p>  form1.submit();</p><p><b>  }</b></p><p><b>  </script></b></p><p>  對(duì)時(shí)間的處理是一個(gè)比較重要的技術(shù),下面是本系統(tǒng)實(shí)現(xiàn)提示時(shí)間的動(dòng)態(tài)顯示:</p><p>  <SCRIPT langua

70、ge=javascript></p><p><b>  <!--</b></p><p>  var testtime = <%=session("testtime")%>;</p><p>  var havetime = testtime*60; //考試時(shí)間長(zhǎng)度:秒</p>&

71、lt;p>  var sec=0;</p><p>  var iTotal=0; //總共用時(shí)</p><p>  var bAlert=false;</p><p>  var min=0;</p><p>  var hou=0;flag=0;idt=window.setTimeout("update();&

72、quot;,1000);</p><p>  function update(){</p><p><b>  sec++;</b></p><p><b>  iTotal++;</b></p><p>  if(sec==60) {sec=0;min+=1;}</p><p

73、>  if(min==60) {min=0;hou+=1;}</p><p>  if(havetime<(iTotal+60)&&!bAlert)</p><p><b>  {</b></p><p>  alert("考試中心提醒你:考試還有1分鐘就要結(jié)束,請(qǐng)馬上檢查并提交你的答案!");

74、</p><p>  bAlert=true;</p><p><b>  }</b></p><p>  if(havetime<iTotal)</p><p><b>  {</b></p><p>  document.form1.Submit.disabled=

75、true;</p><p>  finishTest()</p><p><b>  }</b></p><p>  document.form1.left.value=hou+"時(shí)"+min+"分"+sec+"秒";idt=window.setTimeout("update

76、();",1000);</p><p><b>  }</b></p><p><b>  //--></b></p><p><b>  </SCRIPT></b></p><p><b>  隨機(jī)抽題實(shí)現(xiàn):</b></

77、p><p><b>  <%</b></p><p>  dim i,sql,rs,count,temp,strid1,strid2,strA,strB,strC,strD,strQuestion</p><p><b>  strid1=""</b></p><p><

78、b>  strid2=""</b></p><p><b>  randomize</b></p><p>  for i=1 to session("snumber")</p><p>  set rs=server.createobject("adodb.recordset

79、")</p><p>  sql="select * from test where subjectname='"&session("selectsubjectname") & "'and type='單選題' and haveselect=0 " '得到所有符合條件的試題</p&

80、gt;<p>  rs.open sql,conn,1,2</p><p>  if not rs.eof then</p><p>  count=rs.recordcount'當(dāng)前所選試題還未被選擇的總數(shù)</p><p>  temp=fix(count*rnd(10))'從總數(shù)中隨機(jī)選題</p><p> 

81、 rs.move temp</p><p>  rs("haveselect")=1'已經(jīng)被選擇進(jìn)行標(biāo)注</p><p>  strA=trim(rs("A"))</p><p>  strB=trim(rs("B"))</p><p>  strC=trim(rs(&quo

82、t;C"))</p><p>  strD=trim(rs("D"))</p><p>  strQuestion=trim(rs("question"))</p><p>  strid1=strid1 & rs("ID") & ","</p>

83、<p><b>  rs.update</b></p><p><b>  end if </b></p><p><b>  %></b></p><p><b>  5、評(píng)分實(shí)現(xiàn)</b></p><p>  先提出交卷信息,與數(shù)據(jù)庫(kù)中的

84、答案進(jìn)行比較,從而得出分?jǐn)?shù)</p><p><b>  <%</b></p><p>  subjectname=session("selectsubjectname")</p><p>  studentname=session("studentname")</p><p>

85、;  singlenumber=session("snumber")</p><p>  singleper=session("singleper")</p><p>  multinumber=session("mnumber")</p><p>  multiper=session("mult

86、iper")</p><p>  endtime=now()</p><p><b>  score=0</b></p><p>  selectstr1=request("hidQuestID1")</p><p>  selectstr2=request("hidQuestID

87、2")</p><p>  len1=len(selectstr1)</p><p>  len2=len(selectstr2)</p><p>  str1=left(selectstr1,len1-1)</p><p>  str2=left(selectstr2,len2-1)</p><p>  d

88、im id1,id2</p><p>  id1=split(str1,",")</p><p>  id2=split(str2,",")</p><p>  for i=1 to snumber</p><p>  result=request("no"&id1(i-1)

89、)</p><p>  if not isempty(result) then</p><p>  sql="select * from test where id="& clng(id1(i-1))</p><p>  set rs=server.createobject("adodb.recordset")<

90、;/p><p>  rs.open sql,conn,3,2 </p><p>  if result=rs("answer") then</p><p>  score=score+cint(singleper)</p><p><b>  end if</b></p><p

91、><b>  rs.close</b></p><p>  set rs=nothing </p><p><b>  else</b></p><p><b>  end if</b></p><p><b>  next </b></p&g

92、t;<p>  for i=1 to mnumber</p><p>  result=replace(request("no"&id2(i-1))," ","")</p><p>  if not isempty(result) then</p><p>  sql="s

93、elect * from test where id="& clng(id2(i-1))</p><p>  set rs=server.createobject("adodb.recordset")</p><p>  rs.open sql,conn,3,2 </p><p>  if result=replace(

94、rs("answer")," ","") then</p><p>  score=score+cint(multiper)</p><p><b>  end if </b></p><p><b>  rs.close</b></p><

95、;p>  set rs=nothing </p><p><b>  else</b></p><p><b>  end if</b></p><p><b>  next </b></p><p>  sql="select * from score&quo

96、t;</p><p>  set rs=server.createobject("adodb.recordset")</p><p>  rs.open sql,conn,3,2</p><p><b>  rs.addnew</b></p><p>  rs("stu_name"

97、)=studentname</p><p>  rs("subjectname")=subjectname</p><p>  rs("endtime")=endtime</p><p>  rs("score")=score</p><p><b>  rs.update

98、</b></p><p><b>  rs.close</b></p><p>  set rs=nothing</p><p>  call dbclose()</p><p>  total=singlenumber*singleper+multinumber*multiper</p>&l

99、t;p>  response.write("<center>"&studentname&" 你好!你的考試成績(jī)?yōu)椋?quot;&score&"分,總分為"&total&"分</center>")</p><p><b>  %〉</b><

100、/p><p><b>  6、科目管理實(shí)現(xiàn) </b></p><p>  <%@ Language=VBScript %></p><p>  <% option explicit %></p><p>  <!--#include file="conn.asp"-->

101、</p><p><b>  <% </b></p><p>  if session("name")="" then</p><p>  %><script language="JavaScript"></p><p>  alert(

102、'對(duì)不起,你無(wú)權(quán)進(jìn)入該頁(yè)!');</p><p>  location.href="login.asp";</p><p><b>  </script></b></p><p><b>  <%</b></p><p>  response.

103、End()</p><p><b>  end if</b></p><p>  dim isedit '是否在編輯狀態(tài)</p><p>  dim id,subjectname'定義變量,科目的id</p><p>  dim sql,rs,rsc</p><p>  isedi

104、t=false</p><p>  if request("action")="edit" then</p><p>  isedit=true</p><p><b>  end if</b></p><p>  if request("action")=&q

105、uot;modify" then '修改新科目</p><p>  if trim(request("subjectname"))="" or trim(request("testtime"))="" or trim(request("multinumber"))=""or

106、 trim(request("multiper"))=""or trim(request("singlenumber"))=""or trim(request("singleper"))=""or trim(request("trys"))=""then </p>

107、;<p>  response.write "錯(cuò)誤!請(qǐng)正確填寫各項(xiàng),且不能為空! <a href=mgsubject.asp>返回</a>"</p><p>  response.end</p><p><b>  end if</b></p><p>  sql="updat

108、e testinfo set subjectname='" &cstr(chkStr(request("subjectname")))&"',testtime='"&cstr(chkStr(request("testtime")))&"',snumber='"&cstr

109、(chkStr(request("singlenumber")))&"',singleper='"&cstr(chkStr(request("singleper")))&"',mnumber='"&cstr(chkStr(request("multinumber")))&am

110、p;"',multiper='"&cstr(chkStr(request("multiper")))&"',trys='"&cstr(chkStr(request("trys"))) &"'"</p><p>  conn.execute sq

111、l</p><p>  if err.number <> 0 then</p><p>  response.write "數(shù)據(jù)庫(kù)操作出錯(cuò):" + err.description</p><p><b>  else %></b></p><p>  <script langu

112、age=vbscript></p><p>  msgbox "操作成功!<%=trim(request("subjectname"))%>科目的信息已經(jīng)更新!"</p><p><b>  </script></b></p><p><b>  <%end

113、if</b></p><p><b>  end if</b></p><p>  if request("action")="add" then '添加科目</p><p>  if trim(request("subjectname"))=or trim(r

114、equest("testtime"))="" or trim(request("multinumber"))=""or trim(request("multiper"))=""or trim(request("singlenumber"))=""or trim(request(&

115、quot;singleper"))=""or trim(request("trys"))="" then</p><p>  response.write "錯(cuò)誤!所有項(xiàng)均不能為空! <a href=# onclick='javascript:window.history.go(-1)'>返回</a&

116、gt;"</p><p>  response.end</p><p><b>  end if</b></p><p>  set rs=server.createobject("adodb.recordset") '檢查科目名是否重名</p><p>  rs.open &q

117、uot;select * from testinfo where subjectname='" & cstr(chkStr(request("subjectname"))) & "'",conn,1,1</p><p>  if err.number <> 0 then</p><p>  res

118、ponse.write "數(shù)據(jù)庫(kù)出錯(cuò)"</p><p>  else if not rs.bof and not rs.eof then</p><p>  response.write "錯(cuò)誤!該科目已經(jīng)存在! <a href=# onclick='javascript:window.history.go(-1)'>返回<

119、/a>"</p><p>  response.end</p><p><b>  end if</b></p><p><b>  end if</b></p><p><b>  rs.close</b></p><p>  set

120、rs=nothing</p><p>  sql="insert into testinfo(subjectname,testtime,snumber,singleper,mnumber,multiper,trys) values('" & cstr(chkStr(request("subjectname"))) & "','

121、;" & cstr(chkStr(request("testtime"))) & "','" & cstr(chkStr(request("singlenumber"))) & "','" & cstr(chkStr(request("singleper")

122、)) & "','" & cstr(chkStr(request("multinumber"))) & "','" & cstr(chkStr(request("multiper"))) & "','" & cstr(chkStr(reques

123、t("trys"))) & "')"</p><p>  conn.execute sql</p><p>  if err.number <> 0 then</p><p>  response.write "數(shù)據(jù)庫(kù)操作出錯(cuò):" + err.description</p&

124、gt;<p><b>  else %></b></p><p>  <script language=vbscript></p><p>  msgbox "操作成功!新科目<%=trim(request("subjectname"))%>的信息添加成功!"</p>&

125、lt;p><b>  </script></b></p><p><b>  <%end if</b></p><p><b>  end if</b></p><p>  if request("action")="del" then

126、 '刪除用戶</p><p>  sql="delete from testinfo where id=" &request("id")</p><p>  conn.execute sql</p><p>  if err.number <> 0 then</p><p>

127、;  response.write "數(shù)據(jù)庫(kù)操作錯(cuò)誤:" + err.description</p><p><b>  err.clear</b></p><p><b>  else %></b></p><p>  <script language=vbscript></p

128、><p>  msgbox "操作成功!科目<%=trim(request("subjectname"))%>的信息已刪除!"</p><p><b>  </script></b></p><p><b>  <% end if</b></p>

129、<p><b>  end if</b></p><p><b>  %></b></p><p><b>  7、試題管理實(shí)現(xiàn)</b></p><p>  <%@ Language=VBScript %></p><p>  <% opt

130、ion explicit %></p><p>  <!--#include file="conn.asp"--></p><p><b>  <% </b></p><p>  if session("name")="" then</p><

131、;p>  %> <script language="JavaScript"></p><p>  alert('對(duì)不起,你無(wú)權(quán)進(jìn)入該頁(yè)!');</p><p>  location.href="login.asp";</p><p><b>  </script>&

132、lt;/b></p><p>  <%response.End()</p><p><b>  end if</b></p><p>  dim isedit '是否在修改狀態(tài)</p><p>  dim color '表格顏色</p><p>  dim sql

133、,rs</p><p>  dim subjectname</p><p>  dim number '每頁(yè)顯示的文章數(shù)目</p><p>  dim curpage, i,page </p><p>  subjectname=trim(request("subjectname"))</p>&

134、lt;p><b>  color=1</b></p><p>  function invert(str) </p><p>  invert=replace(replace(replace(replace(str,"&lt;","<"),"&gt;",">&quo

135、t;),"<br>",chr(13)),"&nbsp;"," ")</p><p>  end function</p><p>  number=5 '顯示試題數(shù)默認(rèn)值</p><p>  isedit=false</p><p>  if reque

136、st("action")="edit" then</p><p>  isedit=true</p><p><b>  end if</b></p><p>  if request("action")="del" then '刪除</p>

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論