版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 畢業(yè)論文</b></p><p> 在線考試系統(tǒng)的設計與實現(xiàn)</p><p><b> 摘 要</b></p><p> 在線考試系統(tǒng)是集合現(xiàn)代考試理論、方法和現(xiàn)代信息技術手段的智能化網(wǎng)上考試系統(tǒng),為學生個性化學習提供靈活、方便、科學、公平的個別化考試服務,學生可以隨時隨地進行課程結業(yè)
2、考試,它可以節(jié)約考試成本,提高考試工作的效率。</p><p> 本文首先介紹了在線考試系統(tǒng)的發(fā)展趨勢以及面臨的眾多問題,然后從原理上、技術上介紹了目前使用最廣泛的開發(fā)工具,以及開發(fā)環(huán)境等。本文以在線考試系統(tǒng)為主要研究對象的基礎上,進行了系統(tǒng)的需求分析,在技術、經(jīng)濟等方面進行了可行性分析,以及數(shù)據(jù)庫分析等,同時,對在線考試系統(tǒng)功能模塊圖、系統(tǒng)流程圖的設計,詳細的設計了在線考試系統(tǒng)中的邏輯設計和物理設計,系統(tǒng)總體
3、設計,最后對本設計進行了測試總結。</p><p> 關鍵字:在線考試,ASP,Access數(shù)據(jù)庫,Web,自動評分</p><p><b> Abstract</b></p><p> Online examination system is an intelligent web examination system integrati
4、ng modern examination theory, method and modern information technology, which is to provide a individualized, flexible, convenient, scientific and fair examination service. Students can participate in course exam at any
5、time and in any place. It can save exam cost and improve exam efficiency.</p><p> This paper first introduces the development trend of the online examination system and face, and then from many of the quest
6、ions of principle, technology introduces the most widely used development tools and the development environment, and so on.In this paper, the on-line examination system as the main research object on the basis of the ana
7、lysis of the demand of the system in technology, economy and feasibility analysis, and database analysis, and so on.At the same time, to on-line examination</p><p> Key words: Online examination;,ASP, Acces
8、s database, Web, Automatic grading </p><p><b> 目 錄</b></p><p><b> 摘 要2</b></p><p> Abstract3</p><p><b> 目 錄4</b></p>
9、<p><b> 第一章 前言6</b></p><p> 第二章 系統(tǒng)設計相關原理7</p><p> 2.1 ASP技術介紹7</p><p> 2.2 SQL語句介紹9</p><p> 2.3 VB Script介紹11</p><p> 第三章 需求分
10、析13</p><p> 3.1用戶需求13</p><p> 3.2系統(tǒng)需要解決的主要問題13</p><p> 3.2.1 對于應試者13</p><p> 3.2.2 對于管理者13</p><p> 3.3系統(tǒng)應具備的基本功能13</p><p> 3.4可行性分
11、析14</p><p> 3.4.1技術可行性14</p><p> 3.4.2軟件可行性14</p><p> 3.4.3硬件可行性14</p><p> 第四章 系統(tǒng)總體設計15</p><p> 4.1系統(tǒng)的開發(fā)環(huán)境15</p><p> 4.2工程框架(結構圖)
12、15</p><p> 第五章 詳細設計17</p><p> 5.1功能模塊17</p><p> 5.1.1功能模塊結構圖17</p><p> 5.1.1.1學生功能模塊17</p><p> 5.1.1.2教師功能模塊17</p><p> 5.1.2功能模塊概述及
13、核心代碼18</p><p> 5.1.2.1學生功能模塊18</p><p> 5.1.2.2教師功能模塊29</p><p> 5.2數(shù)據(jù)庫構建44</p><p> 5.2.1數(shù)據(jù)庫構建環(huán)境44</p><p> 5.2.2數(shù)據(jù)表44</p><p> 5.2.3
14、E—R圖45</p><p> 5.2.4數(shù)據(jù)流程圖45</p><p> 5.3主窗體設計46</p><p> 5.3.1首頁46</p><p> 5.3.2用戶登錄界面46</p><p> 5.3.3用戶主要操作界面47</p><p><b> 第六
15、章 測試53</b></p><p> 6.1測試目的53</p><p> 6.2功能模塊測試53</p><p> 6.2.1.學生功能模塊測試53</p><p> 6.2.2 教師功能模塊測試54</p><p> 6.3 兼容性測試54</p><p>
16、; 6.4數(shù)據(jù)庫測試55</p><p> 6.5測試結果55</p><p><b> 結 論56</b></p><p><b> 致 謝57</b></p><p><b> 參考文獻58</b></p><p><b
17、> 前言</b></p><p> 一直以來的傳統(tǒng)考試方式要求老師出試卷、印試卷、安排考試、監(jiān)考、收集試卷、評改試卷、講評試卷和分析試卷,這是一個漫長而復雜的過程。在這個飛速發(fā)展的時代,這樣的考試方式已經(jīng)越來越不適應現(xiàn)代教學的需要,于是產(chǎn)生了大量的在線考試系統(tǒng)。它應用ASP等網(wǎng)絡軟件開發(fā)工具進行研發(fā),并充分利用了B/S結構的特點,其功能目標是實現(xiàn)將現(xiàn)有的紙張答題式考試向基于Internet的
18、無紙化考試系統(tǒng)的轉變,具有良好的開放性,允許系統(tǒng)管理員對試題庫進行管理與開發(fā),有效地保證了題庫的時效性。</p><p> 這樣的應用系統(tǒng)不止在傳統(tǒng)應試方面有其一席之地,在其它方面亦得到了廣泛的應用。</p><p> 隨著經(jīng)濟的發(fā)展和對人才需求的不斷加大,人才的劃分和任用成為勞動力市場的一大難題。不管是國內還是國外的各大機構,都不斷的推出一系列大型的認證考試,如微軟的MCSE、Cis
19、co的CCNA以及我們國家的自學考試和各省市的各種考試等。這些考試都無一例外的在朝著網(wǎng)絡化的方向發(fā)展,因為只有這樣才符合大規(guī)??荚囀r省力以及公正公開的要求。由此可見,網(wǎng)上考試系統(tǒng)的研制是當今教育信息化建設的一項重要課題,目的是充分利用學?,F(xiàn)有的計算機軟、硬件資源和網(wǎng)絡資源實現(xiàn)無紙化考試以彌補傳統(tǒng)手工考試費時、費力的不足?;赪eb的網(wǎng)絡考試已成為大勢所趨,與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術環(huán)節(jié),對實現(xiàn)安全性的途徑、方法也提出
20、了更高的技術要求,它在教育現(xiàn)代化的進程中具有很重要的現(xiàn)實意義。</p><p> 利用ASP技術開發(fā)的基于WEB的多用戶在線考試系統(tǒng)初步應該具有用戶注冊、多用戶同時在線考試、考試時間控制、對客觀題自動判卷、題庫維護、考卷制定、用戶管理、成績管理等功能。</p><p> 通過Internet/Intranet來實現(xiàn)網(wǎng)上考試,可以實現(xiàn)教考分離以及考務工作的全自動化管理,可以有效利用校園網(wǎng)
21、的軟硬件資源,使其發(fā)揮最大效力,更好的為學校的教學、科研、管理服務,它可以將傳統(tǒng)考試過程中的試卷組織、審定印制、傳送收集、登記發(fā)放、評判歸檔各個環(huán)節(jié)縮小到一至兩個環(huán)節(jié),幾乎屏蔽了所有人工直接干預考試活動的可能性,不但能夠節(jié)約大量的時間、人力、物力與財力,而且還可以大幅度提高考試成績的客觀性和公正性。</p><p> 第二章 系統(tǒng)設計相關原理</p><p> 2.1 ASP技術介紹&
22、lt;/p><p> Microsoft Active Server Pages 即我們所稱的ASP,其實是一套微軟開發(fā)的服務器端腳本環(huán)境。Active Server Page 是創(chuàng)建動態(tài)網(wǎng)頁的一個很好的工具,它起一種編程語言的作用,可以利用它編寫動態(tài)產(chǎn)生HTML的程序代碼。因此,只要用戶瀏覽Web站點并請求一個ASP 頁,Web服務器就可以處理相應的ASP代碼,生成HTML代碼,然后將它傳遞到用戶瀏覽器并顯示出網(wǎng)
23、頁。通過ASP我們可以結合HTML網(wǎng)頁、ASP指令和ActiveX元件建立動態(tài)、交互且高效的WEB服務器應用程序。有了ASP就不必擔心客戶的瀏覽器是否能運行所編寫的代碼,因為所有的程序都將在服務器端執(zhí)行,包括所有嵌在普通HTML中的腳本程序。當程序執(zhí)行完畢后,服務器僅將執(zhí)行的結果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。</p><p> 與一般的程序不同,ASP程序無須編譯。A
24、SP程序的控制部份,是使用VBScript、JScript等腳本語言來設計的,當執(zhí)行ASP程序時,腳本程序將一整套命令發(fā)送給腳本解釋器(即腳本引擎),由腳本解釋器進行翻譯并將其轉換成服務器所能執(zhí)行的命令。當然,同其他編程語言一樣,ASP程序的編寫也遵循一定的規(guī)則,如果你想使用你所喜愛的腳本語言編寫ASP程序,那么你的服務器上必須要有能解釋這種腳本語言的腳本解釋器。當你安裝ASP時,系統(tǒng)提供了兩種腳本語言:VBSrcipt和JScript
25、,而VBScript則被作為系統(tǒng)默認的腳本語言。</p><p> ASP程序其實是以擴展名為.asp的純文本形式存在于WEB服務器上的,可以用任何文本編輯器打開它,ASP程序中可以包含純文本、HTML標記以及腳本命令。只需將.asp程序放在Web服務器的虛擬目錄下(該目錄必須要有可執(zhí)行權限),就可以通過WWW的方式訪問ASP程序了。</p><p> ASP所獨具的一些特點有:
26、 1.使用VBScript 、JScript等簡單易懂的腳本語言,結合HTML代碼,即可快速地完成網(wǎng)站的應用程序。 2.無須編譯,容易編寫,可在服務器端直接執(zhí)行。 3.使用普通的文本編輯器,如Windows的記事本,即可進行編輯設計。</p><p> 與瀏覽器無關,用戶端只要使用可執(zhí)行HTML碼的瀏覽器,即可瀏覽ASP所設計的網(wǎng)頁內容。ASP所使用的腳本語言(VBScript 、Jscrip
27、t)均在WEB服務器端執(zhí)行,用戶端的瀏覽器不需要能夠執(zhí)行這些腳本語言。</p><p> ASP 能與任何ActiveX scripting語言相容。除了可使用VBScript或JScript語言來設計外,還通過plug-in的方式,使用由第三方所提供的其他腳本語言,譬如REXX、Perl、Tcl等。腳本引擎是處理腳本程序的COM(Component Object Model)物件。 6.ASP的源程序
28、,不會被傳到客戶瀏覽器,因而可以避免所寫的源程序被他人剽竊,也提高了程序的安全性。 7.可使用服務器端的腳本來產(chǎn)生客戶端的腳本。 8.物件導向(Object-oriented)。 9.ActiveX Server Components(ActiveX服務器元件)具有無限可擴充性。可以使用Visual Basic 、Java 、Visual C++ 、COBOL等編程語言來編寫你所需要的ActiveX Server
29、 Component。 10.另外,ASP技術的處理速度相當快,并且其安全性也很高。ASP最重要的優(yōu)點是能夠建立對諸如時間、地點、用戶標志、以前的選擇和活動等因素敏感的頁面。換句話說,可針對每個用戶的個別需求,用ASP定制網(wǎng)頁,</p><p> ASP有7個固有對象</p><p> Request對象用來處理用戶做出的請求,就是處理用戶要求瀏覽器查看特定的網(wǎng)頁或Web應用時
30、做出的請求。此請求可以HTML的形式輸入或僅以URL的形式作出。Response對象用來處理從Web服務器向用戶發(fā)送信息并對此信息進行控制。</p><p> Serve對象用來代表服務器自身。因此它提供幾個與Web服務器可能要完成的任務相關的常用功能,諸如建立新對象和設置腳本的超時特性等。還有通過將不合法字符轉化為合法字符,把字符串轉換為URL和HTML正確的使用格式的方法。</p><p
31、> Application對象用來代表應用,可用它來管理諸如應用目錄這一類的東西。</p><p> Session對象用來代表用戶會話,并存儲該會話的信息??衫肧ession對象來管理如Web服務器在用戶“請求”之間等待的時間等。</p><p> ObjectContext對象用來管理事務處理。它目前已經(jīng)集成到Windows2000操作系統(tǒng)中了。它包含了所有ASP其他對象
32、,可通過ObjectContext引用ASP的每個對象。</p><p> ASPError對象包含ASP腳本或asp.dll本身產(chǎn)生的任何錯誤的詳細內容。</p><p> 7.ObjectContext。</p><p> 總之,ASP包含三方面含義: 1.Active:ASP 使用了微軟的ActiveX技術。ActiveX(COM)技術是現(xiàn)在Mi
33、crosoft軟件的重要基礎。它采用封裝對象,程序調用對象的技術,簡化編程,加強程序間合作。ASP本身封裝了一些基本組件和常用組件,有很多公司也開發(fā)了很多實用組件。只要你可以在服務器上安裝這些組件,通過訪問組件,你就可以快速、簡易地建立自己的WEB應用。 2.Server:ASP運行在服務器端。這樣就不必擔心瀏覽器是否支持ASP所使用的編程語言。ASP 的編程語言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一
34、個簡集,會VB的人可以很方便的快速上手。然而Netscape瀏覽器不支持客戶端的VBSCRIPT,所以最好不要在客戶端使用VBSCRIPT。而在服務器端,則無需考慮瀏覽器的支持問題。Netscape瀏覽器也可以正常顯示ASP頁面。 3.Pages:ASP返回標準的HTML頁面,可以正常地在常用的瀏覽器中顯示。瀏覽者查看頁面源文件時,看到的是ASP生成的HTML代碼,而不是ASP程序代碼。這樣就可以防止別人抄襲程序。</p&
35、gt;<p> 2.2 SQL語句介紹</p><p> SQL語言是所有關系數(shù)據(jù)庫的公共語言 由于所有主要的關系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS轉到另一個。所有用SQL編寫的程序都是可以移植的。SQL 是PostgreSQL(和大多數(shù)其它關系型數(shù)據(jù)庫)用做查詢語言的語言。它是可以移植的,并且容易學習使用。但是所有SQL語句都必須由數(shù)據(jù)庫服務器獨立
36、地執(zhí)行。這就意味著客戶端應用必須把每條查詢發(fā)送到數(shù)據(jù)庫服務器,等待它處理這個查詢,接收結果,做一些運算,然后給服務器發(fā)送另外一條查詢。所有這些東西都會產(chǎn)生進程間通訊,并且如果客戶端在另外一臺機器上甚至還會導致網(wǎng)絡開銷。如果使用了 PL/pgSQL,那么可以把一塊運算和一系列查詢在數(shù)據(jù)庫服務器里面組成一個塊,這樣就擁有了過程語言的力量并且簡化SQL的使用,因而節(jié)約了大量的時間,因為用不著付出客戶端/服務器通訊的過熱。通過使用PL/pgSQ
37、L,應用可以獲得可觀的性能提升。</p><p><b> SQL語言的使用</b></p><p> 數(shù)據(jù)記錄篩選:sql="select*from數(shù)據(jù)表where字段名=字段值orderby字段名[desc]"sql="select*from數(shù)據(jù)表where字段名like'%字段值%'orderby字段名[de
38、sc]"sql="selecttop10*from數(shù)據(jù)表where字段名orderby字段名[desc]"sql="select*from數(shù)據(jù)表where字段名in('值1','值2','值 3')"sql="select*from數(shù)據(jù)表where字段名between值1and值2"(2)更新數(shù)據(jù)記錄:sql=
39、"update數(shù)據(jù)表set字段名=字段值where條件表達式"sql="update數(shù)據(jù)表set字段1=值1,字段2=值2……字段n=值nwhere條件表達式(3)刪除數(shù)據(jù)記錄:sql="deletefrom數(shù)據(jù)表where條件表達式"sql="deletefrom數(shù)據(jù)表"(將數(shù)據(jù)表所有記錄刪除)(4)添加數(shù)據(jù)記錄:sql="insertinto
40、數(shù)據(jù)表(字段1,字段2,字段3…)values(值1,值2,值3…)"</p><p> sql="insertinto目標數(shù)據(jù)表select*from源數(shù)據(jù)表"(把源數(shù)據(jù)表的記錄添加到目標數(shù)據(jù)表)(5)數(shù)據(jù)記錄統(tǒng)計函數(shù):AVG(字段名)得出一個表格欄平均值COUNT(*¦字段名)對數(shù)據(jù)行數(shù)的統(tǒng)計或對某一欄有值的數(shù)據(jù)行數(shù)統(tǒng)計MAX(字段名)取得一個表格欄最大的值
41、MIN(字段名)取得一個表格欄最小的值SUM(字段名)把數(shù)據(jù)欄的值相加(5)數(shù)據(jù)表的建立和刪除:CREATETABLE數(shù)據(jù)表名稱(字段1類型1(長度),字段2類型2(長度)……)DROPTABLE數(shù)據(jù)表名稱(永久性刪除一個數(shù)據(jù)表)</p><p> (6)記錄集對象的方法:rs.movenext將記錄指針從當前的位置向下移一行rs.moveprevious將記錄指針從當前的位置向上移一行rs.mo
42、vefirst將記錄指針移到數(shù)據(jù)表第一行rs.movelast將記錄指針移到數(shù)據(jù)表最后一行rs.absoluteposition=N將記錄指針移到數(shù)據(jù)表第N行rs.absolutepage=N將記錄指針移到第N頁的第一行rs.pagesize=N設置每頁為N條記錄rs.pagecount根據(jù)pagesize的設置返回總頁數(shù)rs.recordcount返回記錄總數(shù)rs.bof返回記錄指針是否超出數(shù)據(jù)表首端,true表示是,f
43、alse為否rs.eof返回記錄指針是否超出數(shù)據(jù)表末端,true表示是,false為否rs.delete刪除當前記錄,但記錄指針不會向下移動rs.addnew添加記錄到數(shù)據(jù)表末端rs.update更新數(shù)據(jù)表記錄</p><p> 2.3 VB Script介紹</p><p> VBScript只有一種數(shù)據(jù)類型,稱為Variant。Variant是一種特殊的數(shù)據(jù)類型,根據(jù)使用的
44、方式,它可以包含不同類別的信息。因為Variant是VBScript中唯一的數(shù)據(jù)類型,所以它也VBScript中所有函數(shù)的返回值的數(shù)據(jù)類型。最簡單的Variant可以包含數(shù)字或字符串信息。Variant用于數(shù)字上下文中時作為數(shù)字處理,用于字符串上下文中時作為字符串處理。這就是說,如果使用看起來象是數(shù)字的數(shù)據(jù),則VBScript會假定其為數(shù)字并以適用于數(shù)字的方式處理。與此類似,如果使用的數(shù)據(jù)只可能是字符串,則VBScript將按字符串處理
45、。當然,也可以將數(shù)字包含在引號("")中使其成為字符串。除簡單數(shù)字或字符串以外,Variant可以進一步區(qū)分數(shù)值信息的特定含義。例如使用數(shù)值信息表示日期或時間。此類數(shù)據(jù)在與其他日期或時間數(shù)據(jù)一起使用時,結果也總是表示為日期或時間。當然,從Boolean值到浮點數(shù),數(shù)值信息是多種多樣的。Variant包含的數(shù)值信息類型稱為子類型。大多數(shù)情況下,可將所需的數(shù)據(jù)放進Variant中,而Variant也會按照最適用于其包含的
46、數(shù)據(jù)的方式進行操作。聲明變量的一種方式是</p><p> 另一種方式是通過直接在Script中使用變量名這一簡單方式隱式聲明變量。這通常不是一個好習慣,因為這樣有時會由于變量名被拼錯而導致在運行Script時出現(xiàn)意外的結果。因此,最好使用Option Explicit語句顯式聲明所有變量。</p><p> 在VBScript中,過程被分為兩類:Sub過程和Function過程:&l
47、t;/p><p> Sub過程 Sub過程是包含在Sub和End Sub語句之間的一組VBScript語句,執(zhí)行操作但不返回值。Sub過程可以使用參數(shù)(由調用過程傳遞的常數(shù)、變量或表達式)。(2)Function過程 Function過程是包含在Function和End Function語句之間的一組VBScript語句。Function過程與Sub過程類似,但是Function過程可以返回值。Fu
48、nction過程可以使用參數(shù)(由調用過程傳遞的常數(shù)、變量或表達式)。如果Function過程無任何參數(shù),則Function語句必須包含空括號()。 Function過程通過函數(shù)名返回一個值,這個值是在過程的語句中賦給函數(shù)名的。Function 返回值的數(shù)據(jù)類型總是Variant。</p><p><b> 第三章 需求分析</b></p><p><b>
49、 3.1用戶需求</b></p><p> ?。?)針對應試者的考試平臺</p><p> ?。?)針對管理者得管理平臺</p><p> 3.2系統(tǒng)需要解決的主要問題</p><p> 3.2.1 對于應試者</p><p> (1) 應試者進入考試系統(tǒng)應該進行身份驗證。</p>&
50、lt;p> ?。?) 在線考試基于網(wǎng)絡環(huán)境,試卷應該從服務器的數(shù)據(jù)庫隨機抽取試題后動態(tài)生成的。</p><p> ?。?) 系統(tǒng)應該對考試時間進行控制,時間到了會要求考試者交卷。</p><p> ?。?)考試者選擇答案提交后,應該由計算機自動判卷,得到成績后顯示出來。</p><p> (5) 考試完畢后,可以返回登錄界面或繼續(xù)考試。</p>
51、<p> 3.2.2 對于管理者</p><p> ?。?) 管理者進入管理系統(tǒng)應該進行身份驗證。</p><p> ?。?) 應該可以對題庫進行增、刪、查、改等操作。</p><p> ?。?) 可以對考生信息進行查看和修改。</p><p> (4) 可以修改考生信息包括成績。</p><p>
52、3.3系統(tǒng)應具備的基本功能</p><p> 用戶注冊:用戶可以進行注冊,然后登錄。</p><p> 用戶信息的管理:管理員可以增刪用戶試題庫管理:對試題的增、刪、查、改。</p><p> 試卷生成:自動生成試卷。</p><p> 在線考試:系統(tǒng)嚴格控制整個考試過程,實行時間的監(jiān)控與權限的控制,考生需要在限定的考試時間內交卷。
53、</p><p> 計算機自動閱卷:本系統(tǒng)只考慮客觀題,要求計算機能自動閱卷,然后馬上顯示出考生分數(shù)。</p><p> 成績查閱:考生考完以后,管理員應該能對所有紀錄進行查詢,并應該可以刪除指定紀錄。</p><p> 在線考試系統(tǒng)還應該具有友好、簡潔的界面,安全性要高,穩(wěn)定性要強,能夠滿足100人以上同時及進行在線考試。</p><p&
54、gt;<b> 3.4可行性分析</b></p><p> 可行性分析是委托開發(fā)一個系統(tǒng)之前首先要做的事情。分析需求可行性在允許的成本、性能要求下,分析每一項需求實施的可能性,明確與每一項需求實現(xiàn)相聯(lián)系的風險,包括與其它需求的沖突,對外界因素的依賴和技術障礙。</p><p> 3.4.1技術可行性</p><p> 本考試系統(tǒng)是以Wi
55、ndows、Internet Explorer為客戶端,以Windows、Internet Information Server IIS 5.0及以上版本為服務器,以C/S為運行模式的應用系統(tǒng)。它以VBScript為主要開發(fā)語言,在局部輔助以JScript語言。所以在技術上是可行的。</p><p> 3.4.2軟件可行性</p><p> 它以access為數(shù)據(jù)庫搭建平臺。在網(wǎng)頁設計
56、方面則主要使用dreamweaver為開發(fā)工具。在支持軟件方面是可行的。</p><p> 3.4.3硬件可行性</p><p> 服務器:CPU:PIII 500以上,內存:256M以上。客戶機:CPU:P200MMX以上,內存:32M以上即可運行。所以在硬件方面是可行的。</p><p> 第四章 系統(tǒng)總體設計</p><p>
57、4.1系統(tǒng)的開發(fā)環(huán)境</p><p> 開發(fā)平臺:Windows vista</p><p> 應用軟件:dreamweaver、access、IIS5.0</p><p> 應用語言:VBScript、JScript</p><p> 4.2工程框架(結構圖)</p><p><b> 1.總體框
58、架</b></p><p><b> 圖4—1總體框架圖</b></p><p><b> 2.模塊框架</b></p><p><b> 圖4—2模塊框架圖</b></p><p><b> 第五章 詳細設計</b></p>
59、;<p><b> 5.1功能模塊</b></p><p> 5.1.1功能模塊結構圖</p><p> 5.1.1.1學生功能模塊</p><p> 圖5—1學生功能模塊結構圖</p><p> 5.1.1.2教師功能模塊</p><p> 圖5—2教師功能模塊結構圖&
60、lt;/p><p> 5.1.2功能模塊概述及核心代碼</p><p> 5.1.2.1學生功能模塊</p><p> 判斷學員是否存在模塊&登陸模塊</p><p><b> 模塊概述:</b></p><p> ?。?)與數(shù)據(jù)庫用戶信息比較判斷該學員是否存在。</p>
61、<p> ?。?)為用戶建立Session對象</p><p><b> 相應代碼:</b></p><p> Index1.asp //登陸界面</p><p> <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%></p><
62、p> <!-- #include file="conn.asp" --> </p><p><b> <html> </b></p><p><b> <head> </b></p><p> <meta http-equiv="Cont
63、ent-Type" content="text/html; charset=gb2312"> </p><p> <title>學生登陸</title> </p><p><b> </head> </b></p><p><b> <body>
64、 </b></p><p><b> <center></b></p><p> <p>學生登陸</p></p><p> <form name="form2" method="post" action="login1.asp"
65、;></p><p> <table width="39%" border="0"></p><p><b> <tr></b></p><p> <td width="22%" height="40">用戶名:<
66、;/td></p><p> <td width="78%" height="40"><input name="username" type="text" id="username3" size="20"></td></p><p&
67、gt;<b> </tr></b></p><p><b> <tr></b></p><p> <td height="43">密 碼:</td></p><p> <td height="43"><inpu
68、t name="password" type="password" id="password" size="20"></td></p><p><b> </tr></b></p><p><b> <tr></b><
69、;/p><p> <td height="37" colspan="2" align="center"><input type="submit" name="Submit" value="確定"></p><p> <input type=&
70、quot;reset" name="Submit" value="重置"></td></p><p><b> </tr></b></p><p><b> <tr></b></p><p> <td height=&q
71、uot;20" colspan="2"><a href="reg.asp" target="_self">注冊</a></td></p><p><b> </tr></b></p><p><b> </table>
72、</b></p><p><b> </form></b></p><p><b> </center></b></p><p><b> </body> </b></p><p><b> </html&
73、gt; </b></p><p> Login1.asp //登陸處理</p><p> <!-- #include file="conn.asp" --> </p><p><b> <% </b></p><p> set rsc=server.createo
74、bject("adodb.recordset") </p><p> sqlc="select * from student where username='"&request.Form("username")&"' and password='"&request.Form("
75、;password")&"'" </p><p> rsc.open sqlc,conn,1,1 </p><p> if not(rsc.eof) then</p><p> if rsc("score")<>0 then</p><p> if rsc(
76、"score")=-1 then</p><p> response.Write(rsc("username")&"您的成績?yōu)?")</p><p><b> else</b></p><p> response.Write(rsc("username"
77、;)&"您的成績?yōu)?quot;&rsc("score"))</p><p><b> end if</b></p><p><b> else</b></p><p> session("username")=rsc("username&qu
78、ot;) </p><p> session("password")=rsc("password") </p><p> session.Timeout=300</p><p> set rsc=nothing </p><p> response.Redirect("text.asp
79、")</p><p><b> end if </b></p><p><b> else</b></p><p> response.Write("對不起,用戶名或密碼錯誤!")</p><p><b> end if</b></p
80、><p><b> %> </b></p><p> 注冊模塊:用戶注冊。</p><p><b> 模塊概述:</b></p><p> 用戶名與密碼是否為空,是否符合標準;</p><p> 用戶名是否可用,是否重復;</p><p>
81、 兩次輸入的密碼是否相同;</p><p><b> 是否注冊成功;</b></p><p><b> 相應代碼:</b></p><p> Reg.asp //注冊界面</p><p> <%@LANGUAGE="VBSCRIPT" CODEPAGE="
82、;936"%></p><p><b> <html></b></p><p><b> <head></b></p><p> <meta http-equiv="Content-Type" content="text/html; char
83、set=gb2312"></p><p> <title>用戶注冊</title> </p><p><b> </head> </b></p><p><b> <body> </b></p><p><b> &l
84、t;center></b></p><p><b> <pre></b></p><p> <span>用戶注冊</span></p><p><b> <% </b></p><p> =request.QueryString(&
85、quot;msg") </p><p><b> %></b></p><p><b> </pre></b></p><p><b> </center></b></p><p><b> <center>
86、</b></p><p> <form name="form1" method="post" action="addnewdata.asp?ac=adduser"> </p><p> <table width="53%" height="123" bord
87、er="0" > </p><p><b> <tr> </b></p><p> <td width="19%" height="30">用戶名:</td> </p><p> <td width="81%"
88、height="30"><div align="left"></p><p> <input name="username" type="text" id="username" size="40"> </p><p> *</div
89、></td> </p><p><b> </tr> </b></p><p><b> <tr> </b></p><p> <td height="30">密碼:</td> </p><p> <
90、td height="30"><div align="left"></p><p> <input name="password" type="password" id="password" size="40"> </p><p> *&
91、lt;/div></td> </p><p><b> </tr> </b></p><p><b> <tr> </b></p><p> <td height="30">確定密碼:</td> </p><p&
92、gt; <td height="30"><div align="left"></p><p> <input name="password2" type="password" id="password2" size="40"> </p>&l
93、t;p> *</div></td> </p><p><b> </tr> </b></p><p><b> <tr> </b></p><p> <input type="submit" name="Submit&quo
94、t; value="提交"></p><p> </div></td> </p><p><b> </tr> </b></p><p><b> </table> </b></p><p><b> <
95、;/form></b></p><p><b> </center></b></p><p><b> </body> </b></p><p><b> </html> </b></p><p> Addnewda
96、ta.asp//注冊處理</p><p> <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%></p><p> <!-- #include file="conn.asp" --> </p><p><b> <html><
97、;/b></p><p><b> <head></b></p><p> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"></p><p> <title>成功<
98、/title> </p><p><b> </head> </b></p><p><b> <body> </b></p><p><b> <% </b></p><p> ac=request.QueryString(&quo
99、t;ac") </p><p> msg="注冊錯誤信息" </p><p> if request.Form("username")="" then </p><p> msg=msg&"<br>"&"用戶名不能為空" &
100、lt;/p><p><b> end if </b></p><p> if strcomp(cstr(request.Form("password")),cstr(request.Form("password2")))<>0 then </p><p> msg=msg&"
101、;<br>"&"兩次密碼輸入不同" </p><p><b> end if </b></p><p> if strcomp(msg,"注冊錯誤信息")>0 then </p><p> response.Redirect("reg.asp?msg=
102、"&msg) </p><p><b> end if </b></p><p> if ac="adduser" then </p><p> set rsc=server.createobject("adodb.recordset") </p><p>
103、 sql="select * from student where username='"&request.Form("username")&"'" </p><p> rsc.open sql,conn,1,1 </p><p> ck=rsc("username") &
104、lt;/p><p> set rsc=nothing </p><p> if ck<>"" then </p><p> msg=msg&"<br>"&"用戶名被人注冊" </p><p> response.Redirect("
105、;reg.asp?msg="&msg) </p><p><b> end if </b></p><p> dsql="select * from student where id is null" </p><p> set rs=server.createobject("adodb.r
106、ecordset") </p><p> rs.open dsql,conn,1,3 </p><p> rs.addnew </p><p> rs("username")=request.Form("username") </p><p> rs("password&qu
107、ot;)=request.Form("password")</p><p> rs("score")=0 </p><p> rs.update </p><p> set rs=nothing </p><p><b> %> </b></p>&
108、lt;p><b> <center> </b></p><p> <a href="index1.asp" target="_self">注冊成功,點擊登陸</a> </p><p> </center> </p><p><b>
109、<% </b></p><p><b> end if </b></p><p><b> %> </b></p><p><b> </body> </b></p><p><b> </html></b
110、></p><p> 3.查分模塊:(登陸時若已參加過考試則顯示分數(shù))</p><p><b> 模塊概述:</b></p><p><b> 數(shù)據(jù)庫查詢。</b></p><p><b> 考試模塊</b></p><p><b&g
111、t; 模塊概述:</b></p><p><b> 限定考試時間</b></p><p><b> 提供考題</b></p><p><b> 提交&評分模塊</b></p><p><b> 模塊概述:</b></p&
112、gt;<p><b> 提交學員所做答案</b></p><p> 與數(shù)據(jù)庫中正確答案對比評分:未在規(guī)定時間內答完的記零分,在規(guī)定內答完的安如下公式換算(right/all=得分/100)</p><p><b> 得分記錄入數(shù)據(jù)庫</b></p><p><b> 顯示成績</b&g
113、t;</p><p> 考試模塊及提交&評分模塊代碼:</p><p> Text.asp//考試界面&時間顯示</p><p> <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%></p><p> <!-- #include fi
114、le="conn.asp" --></p><p><b> <%</b></p><p> sql="select * from test"</p><p> set rs=conn.Execute(sql)</p><p><b> %>&l
115、t;/b></p><p> <script LANGUAGE="Javascript"></p><p> var isn1=null;</p><p> var isn2=false;</p><p> today=new Date();</p><p> funct
116、ion stopit(){</p><p><b> if(isn2){</b></p><p> clearTimeout(isn1);</p><p><b> }</b></p><p> isn2=false;</p><p><b> }<
117、/b></p><p> function startit(){</p><p><b> stopit();</b></p><p> isnclock();</p><p><b> }</b></p><p> function isnclock(){&
118、lt;/p><p> var now=new Date();</p><p> var hrs=now.getHours();</p><p> var min=now.getMinutes();</p><p> var sec=now.getSeconds();</p><p> document.clckh
119、.disp.value=""+((hrs>12) ? hrs-12:hrs);</p><p> document.clckm.disp.value=((min<10) ? "0" : "")+min;</p><p> document.clcks.disp.value=((sec<10) ? "
120、0" : "")+sec;</p><p> document.clck.disp.value=(hrs>=12) ? "p.m." : "a.m.";</p><p> is1=setTimeout("isnclock()",1000);</p><p> isn
121、2=true;</p><p><b> }</b></p><p><b> </script></b></p><p><b> <html></b></p><p><b> <head></b></
122、p><p> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"></p><p> <meta http-equiv="refresh" content="30;URL=lose.asp"></p
123、><p> <meta name="Microsoft Visual Studio 6.0"></p><p><b> </head></b></p><p> <body onLoad="startit()"></p><p><b&
124、gt; <center></b></p><p> <table border="2"></p><p><b> <tr></b></p><p> <td>Time</td><td>Hour</td><td>
125、;Min</td><td>Sec</td><td></td></p><p><b> </tr></b></p><p><b> <tr></b></p><p><b> <td></td>&l
126、t;/b></p><p> <td valign="top"><form name="clckh" onSubmit="0"></p><p> <input type="text" name="disp" size="2" va
127、lue=""></p><p> </form></td></p><p> <td valign="top"><form name="clckm" onSubmit="0"></p><p> <input type=&
128、quot;text" name="disp" size="2" value=""></p><p> </form></td></p><p> <td valign="top"><form name="clcks" onSubm
129、it="0"></p><p> <input type="text" name="disp" size="2" value=""></p><p> </form></td></p><p> <td valig
130、n="top"><form name="clck" onSubmit="0"></p><p> <input type="text" name="disp" size="4" value=""></p><p> &
131、lt;/form></td></tr></p><p><b> </table></b></p><p><b> </center></b></p><p><b> <p></p></b></p>
132、<p> <p><font>*請注意時間!</font></p></p><p> <p><font>考試時間為45分鐘,45分鐘內沒有交卷者將被記為零分!</font></p></p><p> <form action="result.asp" id
133、="form1" method="post" name="form1"></p><p><b> <p></b></p><p><b> <%</b></p><p><b> i=1</b></p&g
134、t;<p> rs.movefirst</p><p> do while not rs.eof</p><p><b> %></b></p><p> <p align="left"><%=rs("question")%></p><
135、/p><p> <table align="center" border="1" cellpadding="1" cellspacing="1" width="80%"></p><p><b> <tr></b></p><
136、p> <td style="width:50% " width="50%"></p><p> <input name="ans<% =i%>" type="radio" value="A"></p><p> <%=rs("a
137、")%></td></p><p><b> <td></b></p><p> <input name="ans<%=i%>" type="radio" value="B"></p><p> <% =rs(
138、"b") %></td></tr></p><p><b> <tr></b></p><p><b> <td></b></p><p> <input name="ans<%=i%>" type=&qu
139、ot;radio" value="C"></p><p> <%=rs("c")%></td></p><p><b> <td></b></p><p> <input name="ans<%=i%>" ty
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——在線考試系統(tǒng)的設計與實現(xiàn)
- 在線考試系統(tǒng)的設計與實現(xiàn)畢業(yè)論文
- 畢業(yè)論文----在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)論文---在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)論文——在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)論文—智能在線考試系統(tǒng)的設計與實現(xiàn)
- 學生在線考試系統(tǒng)的設計與實現(xiàn)-畢業(yè)論文
- 學生在線考試系統(tǒng)的設計與實現(xiàn)畢業(yè)論文
- 畢業(yè)論文 基于web在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)論文范文——在線考試系統(tǒng)的設計與實現(xiàn)
- 在線畢業(yè)論文提交系統(tǒng)的設計與實現(xiàn)——畢業(yè)論文
- 畢業(yè)論文-基于javaweb的在線考試系統(tǒng)的設計與實現(xiàn)
- 在線投保系統(tǒng)的設計與實現(xiàn)——畢業(yè)論文
- 在線投保系統(tǒng)的設計與實現(xiàn)——畢業(yè)論文
- 軟件工程畢業(yè)論文-c語言在線考試系統(tǒng)的設計與實現(xiàn)——在線考試模塊
- 畢業(yè)論文——網(wǎng)上報名及在線考試系統(tǒng)的設計與實現(xiàn)
- 學生在線考試系統(tǒng)--在線考試與分數(shù)查詢功能設計與實現(xiàn)【畢業(yè)論文】
- 《信息論與編碼》在線考試系統(tǒng)的設計與實現(xiàn)——畢業(yè)論文
- 畢業(yè)設計(論文)在線考試系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)論文--在線手機銷售系統(tǒng)的設計與實現(xiàn)
評論
0/150
提交評論