基于php網上考試系統畢業設計_第1頁
基于php網上考試系統畢業設計_第2頁
基于php網上考試系統畢業設計_第3頁
基于php網上考試系統畢業設計_第4頁
基于php網上考試系統畢業設計_第5頁
已閱讀5頁,還剩36頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PAGEPAGE36畢業設計(論文)題目:學生姓名____________學號_201022070106_____班級_電子102201H_____所屬院(系)__電子信息工程系__指導教師____________2014年5月20日基于php網上考試系統摘要隨著科技的發展,網絡技術已經深入到人們的日常生活中,同時帶來了教育方式的一次變革。而網絡考試則是一個很重要的方向?;赪eb技術的網絡考試系統可以借助于遍布全球的Internet進行。因此考試既可以在本地進行,也可以在異地進行,大大拓展了考試的靈活性。并且縮短了傳統考試要求老師打印試卷、安排考試、監考、收集試卷、評改試卷、講評試卷和分析試卷,這個漫長而復雜的過程,使考試更趨于客觀、公正。本文介紹了一個具有在線考試、添加題庫、成績查詢等功能的在線考試系統。該系統是基于PHP和MySQL。設計本系統要熟悉HTML,PHP語言及MySQL數據庫的編輯和應用。其中用到了Dreamweaver幫助進行站點和網頁設計,還用到了phpmyadmin對MySQL數據庫進行可視化操作。全文共分為緒論、系統分析、設計工具及關鍵技術介紹、系統概要設計、系統詳細設計、系統測試、總結展望、參考文獻。詳細闡述了系統分析、系統設計的方法及其內容。關鍵詞:在線考試系統;及時閱卷;基于php;MySQLOnlineExaminationSystemBasedPHPAbstractWith

the

development

of

science

and

technology,

network

technology

has

deep

into

the

People's

Daily

life,

and

the

way

of

education

brings

a

transformation.

And

network

exam

is

a

very

important

direction.

Based

on

the

Web

technology

network

exam

system

can

all

over

the

world

by

Internet.

So

the

exam

can

in

local,

or

in

other

cities,

greatly

expand

the

flexibility

of

the

exam.

And

shorten

the

traditional

test

request

print

examination

paper,

arrange

the

exam

teacher,

monitors,

collection,

as

a

test,

evaluation

and

analysis

of

the

test

paper

test

papers,

the

long

and

complex

process,

tend

to

be

more

objective

and

fair

exam.This

paper

introduces

a

on-line

exam,

timely

with

scores

query

scoring,

and

examination

questions

and

the

examinee

information

management

functions

of

network

on-line

examination

system.

The

system

is

based

on

PHP

and

MySQL,

in

order

to

match

the

online

teaching

set

up

"online

examination

system,

the

realization

of

online

learning

and

the

integration

of

design.

Design

the

system

must

be

familiar

with

the

HTML,

PHP

language

and

MySQL

database

editors

and

application.

With

the

help

of

Dreamweaver

on

site

and

web

design,

still

use

the

phpmyadmin

MySQL

database

of

visual

operation.

Full

text

is

divided

into

the

introduction,

system

analysis,

design

tools

and

key

technology

is

introduced,

the

system

design,

system

detailed

summary

design,

system

test

and

summarized

the

outlook

and

references.

Expounds

the

system

analysis,

system

design

method

and

its

content.

Keywords:

on-line

examination

system;

Timely

reading;

Based

on

the

PHP;

MySQL

PAGEi目錄23475第1章緒論 1235131.1系統開發的現狀 1276871.2系統開發的目的 1156621.3系統開發的意義 226546第二章系統分析 3258662.1可行性分析 3136402.1.1經濟可行性 3283942.2需求分析 3310762.3開發環境 420614第三章設計工具及關鍵技術介紹 5208273.1Apache簡介 5159633.2PHP語言簡介 5251653.3PHP連接MySQL數據庫 6187723.3.1PHP連接數據庫的兩種方法 683453.3.2PHP對MySQL數據庫的兩種連接方式 79964第四章系統概要設計 871704.1系統的總體設計 8243874.2數據庫設計 8158454.3系統結構設計 8145884.3.1系統功能結構 846564.3.2系統流程圖 914555第五章系統詳細設計 11145835.1數據庫設計 11316105.1.1數據庫分析 11199355.1.2概念設計 1185955.1.3數據庫物理結構 12152895.2系統詳細設計與實現 1629945.2.1系統配置 16261045.2.2前臺詳細設計與實現 17185015.2.3后臺詳細設計與實現 257921第六章系統測試 31285186.1測試環境 31227896.2什么是軟件測試 31168626.3軟件測試的目標與方法 31128336.4系統評估 3219745第七章總結與展望 3313369參考文獻 349306致謝 35PAGE1第1章緒論1.1系統開發的現狀網絡化在線考試作為網上遠程教育的重要組成部分和發展分支,己經在國外一些發達國家得到蓬勃發展,人們選學課程和考試都是通過網上進行。特別是Internet業務的普及,構筑高性能、低成本的計算機網絡化在線考試,從技術條件和經濟條件上己經成熟。在我國普遍地看絕大多數遠程教育的考試還停留在傳統考試方式。在此方式下,組織一次考試至少要經過5個步驟,即人工出卷、考生考試、人工閱卷、試卷分析和成績評估。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且這樣工作將是一件十分煩瑣和非常容易出錯的事情。但是對互聯網的真正應用僅限于網上報名工作和網上成績查詢,還沒有真正形成上網考試的規模。而在國外一些國家,網上提交作業和網上考試已經相當普及了。所以說傳統的考試方式已經不能適應現代考試的需要。1.2系統開發的目的信息技術的發展對教育的影響是巨大的,隨著信息技術和網絡技術的迅速發展,教育信息化和網絡化也將成為必然的趨勢。作為教育評價和衡量學生能力的考試也正經歷著無紙化和網絡化的飛躍。網絡的開放性和分布性的特點以及基于互聯網的巨大計算能力使得考試突破了時間和空間的限制?;诰W絡技術的考試系統正成為人們的研究熱點之一,其中,基于Web技術的考試系統已成為互聯網的重要應用之一。目前教師采用在線考試系統的還不多見,因為教師個體精力確實有限。但隨著教研組制度的完善和教學交流活動的增加。對題庫的創建將提上議事的日程,在線考試系統將大有用武之地,且能確??硷L考紀的根本好轉。在線考試具有動態出題、自動閱卷、成績分析等優點,不僅大大減輕了教師人工組卷繁瑣的工作量,提高資源利用率,其運行過程中,組卷速度較快,較少出現重復的現象,而且有利于教考分離的實施,符合目前教學改革的目標。更節省紙張資源,增強環保意識。因此,在線考試系統具有潛在的巨大商機和研究價值,是未來數字化校園系統研究的熱點內容。1.3系統開發的意義目前我院學生的期末考試仍采用任課教師(個人或集體)考前出題的方式。為解決學生壓題,考前漏題,補(緩)考試題與正式考試試題題量及難度差異問題,教務管理部門通常要求教師同時出多套試卷,其題量與難度要求相同,并且要同時給出答案和評分標準。若建立題庫,每次考試前由題庫中題目隨機生成試卷,則可較好地解決考教分離的問題,也可將廣大教師從每學期末繁重的命題工作中解放出來。近年來,部分學校陸續開發了一些基于微機的題庫系統,并作為成果向其它學校推廣,但這些題庫一般都是結合本校具體情況,針對單一課程的小型題庫,甚至某些學校購得的題庫系統中的題目本身是不可維護的,即使題目已不適合自己的學生考試使用,也無法更新題庫中的題目。為解決題庫系統中存在的這些問題,作者經過研究幾種不同的網上系統,經充分的考慮,最后給出了一個較為理想的題庫系統解決方案,并結合當前比較使用的B/S結構開發一個功能較完備的網上考試系統。第二章系統分析2.1可行性分析可行性分析的目的就是要用最小的代價在盡可能短的時間內確定問題是否能夠解決。通過分析解法的利弊,來判定系統目標和規模是否現實,系統完成后所能帶來的效益是否達到值得去投資開發這個系統的程度。網絡在線考試系統的可行性可從以下兩方面考慮。2.1.1經濟可行性定期的組織考試是各個院校及時掌握學生學習成績的有效方式,利用網絡在線考試系統,一方面可以節省人力資源,降低考試成本。另一方面,在線考試系統能夠快速進行考試和評分,體現出考試的客觀與公正性。2.2需求分析隨著計算機技術的發展和網絡技術的日益成熟,通過網絡進行信息交流已成為一種快捷的交互方式。在這種網絡環境下,學?;蚩荚嚈C構希望通過建立網絡在線考試網站來擴大知名度、降低管理成本和減少人力物力的投資,從而為考生提供更全面、更靈活的服務,并全面、準確地對考試進行跟蹤和評價。與此同時,考生希望根據自己的學習情況進行測試,并能夠得到客觀、科學的評價;教務人員希望能夠有效地改進現有的考試模式,提高考試效率。通過實際情況的調查,要求網絡在線考試系統具有以下功能:界面設計美觀大方、方便、快捷、操作靈活,樹立企業形象。要求實現在線考試功能,自動核算考試成績。要求提供考試時間倒計時功能,使考生實時了解考試剩余時間。要求系統自動閱卷,保證考試成績真實有效。要求考生憑準考證號查詢考試成績,以保證信息安全。2.3開發環境Apache是目前應用最廣的Web服務器;PHP是一種服務器端腳本語言,而MySQL是一個小巧的數據庫系統軟件,它們特別適用于網站建設。Apache+PHP+MySQL不僅僅是開源項目,可免費獲取,而且它支持Linux、UNIX、OS/2和Windows多個操作系統,可移植性好。因此,這種組合是設計動態網站的最佳解決方案。(1)硬件需求:計算機(winXP,win7系統)(2)軟件需求:開發工具:DreamweaverCS5服務器端開發環境:Apache2.2.11+PHP5.2.9+MySQL5.1.32+phpMyAdmin3.1.3第三章設計工具及關鍵技術介紹3.1Apache簡介Apache是世界使用排名第一的Web服務器軟件。它可以運行在幾乎所有廣泛使用的計算機平臺上,由于其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。Apacheweb服務器軟件擁有以下特性:支持最新的HTTP/1.1通信協議擁有簡單而強有力的基于文件的配置過程支持通用網關接口支持基于IP和基于域名的虛擬主機支持多種方式的HTTP認證集成Perl處理模塊集成代理服務器模塊支持實時監視服務器狀態和定制服務器日志支持服務器端包含指令(SSI)支持安全Socket層(SSL)提供用戶會話過程的跟蹤支持FastCGI通過第三方模塊可以支持JavaServlets3.2PHP語言簡介PHP是英文超級文本預處理語言HypertextPreprocessor的縮寫,它是一種HTML內嵌式的語言,是一種在服務器端執行的嵌入HTML文檔的腳本語言,PHP獨特的語法混合了C、Java、Perl以及PHP自創新的語法。它可以比CGI或者Perl更快速的執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯后代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。PHP具有非常強大的功能,所有的CGI的功能PHP都能實現,而且支持幾乎所有流行的數據庫以及操作系統。以下羅列了PHP所具有的一些特點:(1)開放的源代碼。所有的PHP源代碼事實上都可以得到。(2)PHP是免費的。和其它技術相比,PHP本身免費。(3)PHP的快捷性。程序開發快,運行快,技術本身容易學習,上手快。嵌入HTML:因為PHP可以嵌入HTML語言,它相對于其他語言,編輯簡單,實用性強,更適合初學者。(4)跨平臺性強。由于PHP是運行在服務器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。(5)效率高。PHP消耗相當少的系統資源。(6)圖像處理。用PHP動態創建圖像(7)面向對象。在php5中,面向對象方面都有了很大的改進,現在php完全可以用來開發大型商業程序。(8)專業專注。PHP支持腳本語言為主,同為類C語言。3.3PHP連接MySQL數據庫3.3.1PHP連接數據庫的兩種方法(1)通過mysql庫和mysqli庫函數連接。這種方法是PHP連接MySQL最常用的方法,無論從易用性和效率上都比用ODBC接口連接好。PHP存取mysql數據庫的四個步驟是:建立連接:mysql_connect();操縱數據庫:mysql_select_db();返回布爾型數據值操縱數據庫中的數據:mysql_query();關閉連接:mysql_close();(2)通過ODBC接口連接。開放式數據庫互聯(opendatabaseconnectivity,ODBC)是Microsoft引進的一種早期數據庫接口技術。Microsoft引進這種技術的一個主要原因是,以非語言專用的方式,提供給程序員一種訪問數據庫內容的簡單方法。PHP通過ODBC不僅可以連接MySQL數據庫,而且還可以連接Oracle、Sybase、Informix和SQLServer等。3.3.2PHP對MySQL數據庫的兩種連接方式無論是使用mysql/mysqli庫函數還是使用ODBC接口連接,PHP對MySQL數據庫的連接方式都有兩種。分別是永久連接和非永久連接方式。(1)永久連接方式:它的最大的優點是效率比非永久連接方式高,當客戶端對MySQL服務器的連接請求非常頻繁時,永久連接將更加高效。它使得每個子過程在其生命周期中只做一次連接操作,而非每次在處理一個頁面時都要向MySQL服務器提出連接請求。即每個子過程將對服務器建立各自獨立的永久連接。(2)非永久連接方式:即短連接方式。當客戶端向Web服務器請求網頁時,服務器處理這個請求,并將所請求的網頁發送給瀏覽器,然后連接就被斷開,直到瀏覽器發出下一個請求。對于大部分網站通常都使用這種連接方式,它雖然沒有永久連接方式的效率高,但是可有效避免永久連接所帶來的問題和提高服務器承載能力。第四章系統概要設計4.1系統的總體設計根據系統的功能要求,網絡考試系統中涉及管理員,他的職能是進行試題庫維護,包括刪除,添加,及時更新。所有數據都存儲在服務器的數據庫中,具體應達到以下目標:采用開放、動態的系統框架,加強用戶與網站的交互性。具有空間性。被授權的用戶可以在異地登陸考試系統,無須到指定地點行進行考試。操作簡單方便,界面簡潔美觀。系統自動閱卷,保證成績的真實準確??忌梢粤⒓床樵冏约旱目荚嚦煽兒痛疱e題目及正確答案。4.2數據庫設計數據庫設計的任務是確定系統所需的數據庫,它的價值在于它能夠向用戶提供有意義的信息,還有向系統供應所需的一切數據。在MySQL數據庫系統中建立一個名為db_online的數據庫,在該數據庫中可以創建與實體對應的數據表,存放考試系統中與考生,管理員,考題類別,考試成績相關的數據。下面給出數據庫中所包含的數據表的結構圖,如圖4.2所示。圖4.2onlinetest數據庫所包含數據表的結構圖4.3系統結構設計4.3.1系統功能結構網絡考試系統的考生用戶和管理員分別為前臺用戶和后臺用戶,他們的功能職責不同,其功能結構圖如圖4.3.1所示。圖4.3.1網絡考試系統功能結構圖考生功能:(1)參加考試:選擇考試試卷之后,考試開始。(2)完成后提交試卷,自動閱卷。(3)顯示錯誤題目及正確答案。管理員功能:(1)考試管理:添加、修改考試試卷。(2)題庫管理:添加、修改考試題目,及時對題庫進行更新,刪除舊的題目,插入新的題目等。4.3.2系統流程圖考生在網絡在線考試系統中通過注冊為網站用戶,登錄網站進行相關操作??忌卿浐?,可以進行在線考試、查詢成績和修改個人密碼的操作。在考試前,考生需要閱讀考試規則、選擇考試套題后開始考試;考試時間結束時,考生提交試卷;提交試卷的同時,系統將自動返回本次考試的考試結果。網站的管理員通過登錄模塊可以登錄到網站的后臺系統,對考生信息、考試信息、管理員信息進行管理。網絡在線考試系統的系統流程,如圖4.3.2所示。圖4.3.2網絡在線考試系統流程圖第五章系統詳細設計5.1數據庫設計數據庫的設計過程一般是從現實世界出發,進行需求分析、概念分析、邏輯分析和物理設計的。其中需求分析是整個設計過程的基礎,是最困難、最耗費時間的一步。需求分析做的不好,甚至會導致整個數據庫設計返工重做。概念結構設計師整個數據庫設計的關鍵,它通過對用戶需求進行分析、綜合、歸納與抽象,形成一個獨立、具體的數據可管理系統的概念模型。邏輯結構設計師將概念轉換為某個數據庫管理系統所支持的數據庫模型,并對其進行優化。物理結構設計是為邏輯結構設計選擇一個最適合應用環境的物理結構,并對數據可進行布置。5.1.1數據庫分析MySQL是一個小巧的數據庫系統軟件,特別適用于網站建設。MySQL的設計目標是提供一個高速、可靠、可擴展、易于使用的數據庫管理系統。Apache+PHP+MySQL不僅僅是開源項目,可免費獲取,而且它支持Linux、UNIX、OS/2和Windows多個操作系統,可移植性好,這種組合是設計動態網站的最佳解決方案。綜上所述,本系統采用MySQL數據庫。5.1.2概念設計(1)數據庫類實體數據庫類實體包括服務器名或IP、端口號、用戶名、密碼、數據庫等屬性。考生信息實體的E-R圖,如圖5.1.2(1)所示。端口號端口號用戶名服務器數據庫類實體數據庫類實體……密碼密碼數據庫數據庫圖5.1.2(1)數據庫類實體E-R圖(2)配置頁面配置頁面包括服務器或IP地址、web端口號和網站名稱屬性。配置頁面的E-R圖如圖5.1.2(2)所示。端口號端口號服務器或IP地址服務器或IP地址網站名稱網站名稱配置頁面配置頁面圖5.1.2(2)配置頁面E-R圖(3)頁眉頁面(4)頁腳頁面(5)模板頁面(6)JS文件(7)樣式文件5.1.3數據庫物理結構(1)test_admin(管理員信息表)管理員信息表用來保存管理員信息,主鍵為adminid。該數據表結構如圖5.1.3(1)所示。圖5.1.3(1)管理員信息表結構圖(2)test_thread(試卷信息表)試卷信息表用來保存試卷信息。主鍵為id。該數據表結構如圖5.1.3(2)所示。圖5.1.3(2)試卷信息結構圖(3)test_title(考題信息表)考題信息表用來保存考試題目信息和考題正確答案等相關信息。該數據表結構如圖5.1.3(3)所示。圖5.1.3(3)考題信息結構圖(4)test_choice(考題選項信息表)考題選項信息表用來保存考試題目選項信息等相關信息。該數據表結構如圖5.1.3(4)所示。圖5.1.3(4)考題選項信息結構圖(5)test_setmark(考題類型分值信息表)考題類型分值信息表用來保存考題類型分值信息等相關信息。該數據表結構如圖5.1.3(5)所示。圖5.1.3(5)考題選類型分值項信息結構圖5.2系統詳細設計與實現根據需求分析,我們把在線考試系統分為六個模塊,即數據庫交互模塊、功能列表模塊、題庫模塊。下面來看系統的詳細設計與實現。5.2.1系統配置系統配置主要包括代碼開發工具配置和服務器配置。本系統采用的開發工具是Dreamweaver,數據庫則采用得是MySQL,Web服務器采用Apache服務器。B/S模式系統的目錄結構有一定的規律性,因此必須遵循規范,并按照需求分析建立各個模塊的目錄結構。整個目錄結構如下圖5.2.1:圖5.2.1目錄結構圖首先將PHP連接到MySQl數據庫服務器程序(conn.php),該程序建立與MySQL服務器的連接,打開onlinetest數據庫,代碼如下:<?php$hostname_localhost="localhost";$database_localhost="db_online";$username_localhost="root"; $password_localhost="admin";$localhost=mysql_pconnect($hostname_localhost,$username_localhost,$password_localhost)ortrigger_error(mysql_error(),E_USER_ERROR);mysql_select_db("onlinetest")ordie("不能選擇數據庫:".mysql_error());mysql_query("setnamesgb2312");?>在每一個PHP程序的開頭通過以下語句引用db_mysql.php程序:require(“db_mysql.php”);5.2.2前臺詳細設計與實現前臺首頁設計(1)考生可以到在線考試系統的前臺首頁。前臺首頁主要用于實現前臺功能導航,該頁面主要包括考試名稱列表導航鏈接。下面為前臺首頁頁面,如圖5.2.2(1)所示。圖5.2.2(1)前臺首頁頁面(2)在線考試系統前臺首頁主要實現了考生選擇試卷,參加考試如圖5.2.2(2)所示。圖5.2.2(2)考生進行考試頁面在線考試模塊設計(1)在線考試模塊的主要功能是允許考生在網站上針對指定的課程進行考試。在該模塊中,考生首先需要登錄到本系統中,閱讀考試規則,在同意所列出的考試規則后,才能選擇考試類別和套題,然后進入考試頁面進行答題,當考生提交試卷或者到達考試結束時間時,系統將自動對考生提交的試卷進行評分,并給出最終考試成績。在線考試模塊的系統流程如圖5.2.2所示。圖5.2.2在線考試模塊的系統流程圖(2)在線考試模塊中最核心的功能是如何輸出考題/如何對提交的答案進行判斷,并且將答案輸出到當前頁中,這是在線考試最關鍵之處。把系統需要的全部數據庫制作完成以后,將初始化模塊和數據庫模塊聯系起來,根據題型比例,組成一張完整的試卷。由于上述三方面的內容都在同一頁中顯示,所以在技術實現的過程中這三方面是以一個整體的形式出現。單選題輸出,答案判斷和考題答案輸出的關鍵代碼如下:<?phpset_include_path('.'.PATH_SEPARATOR.'./admin'.PATH_SEPARATOR.get_include_path());include("global.php");$threadid=intval($_REQUEST[threadid]);if($_POST["action"]=="dotest"){$_POST[radio]=$_POST[radio]?$_POST[radio]:array();$_POST[checkbox]=$_POST[checkbox]?$_POST[checkbox]:array();//取得單選和多選分值$getsetmark=$db->query_first("SELECTradio,checkboxFROM".$db_prefix."setmark");//緩存所有正確答案$answers=$db->query("SELECTid,title,choicetype,answerFROM".$db_prefix."titleWHERE1");$answer_array=array();$titles=array();$error=array();$tmark=0;while($row=$db->fetch_array($answers)){$answer_array[$row[id]]=$row[answer]; $titles[$row[id]]=$row[title]; if($row[choicetype]=="radio"){ $tmark+=$getsetmark[radio]; }elseif($row[choicetype]=="checkbox"){ $tmark+=$getsetmark[checkbox]; }}$mark=0;foreach($_POST[radio]as$titleid=>$choice){if($choice==$answer_array[$titleid]){ $mark+=$getsetmark[radio]; }else{ $error[]=array($titleid,$choice,$answer_array[$titleid]); }}foreach($_POST[checkbox]as$titleid=>$choice){$c_answers=explode(",",$answer_array[$titleid]); $flag=false; foreach($c_answersas$answer){ if(!in_array($answer,$choice)){ $flag=true; } } foreach($choiceas$answer){ if(!in_array($answer,$c_answers)){ $flag=true; } } if($flag){ $error[]=array($titleid,implode(",",$choice),$answer_array[$titleid]); continue; } $mark+=$getsetmark[checkbox];}$msg="本次考試總分{$tmark}分\\n你的得分{$mark}分\\n\\n\\n";if($error){$msg.="以下題目你回答錯誤:\\n"; foreach($erroras$v){ $msg.="\\n題目:{$titles[$v[0]]}\\n你的答案:{$v[1]}\\n正確答案:{$v[2]}\\n\\n"; }}$msg=str_replace(">",">",$msg);$msg=str_replace("<","<",$msg);echo"<script>alert('$msg');document.location.href='index.php'</script>";exit;}if(!$threadid){echo"參數錯誤";echo'<metahttp-equiv="refresh"content="2;url=index.php">';exit;}//考試名稱$threads=$db->query_first("SELECTnameFROM".$db_prefix."threadWHEREid=$threadid");$threadtitle=$threads[name];//題目表單$conditions=$threadid?"threadid='$threadid'":1;$titles=$db->query("SELECT*FROM".$db_prefix."titleWHERE$conditionsORDERBYidASC");$titlelist=false;$int=0;$chars=Array(1=>"A",2=>"B",3=>"C",4=>"D",5=>"E",6=>"F",7=>"G");while($title=$db->fetch_array($titles)){$int++; $tests=$db->query("SELECT*FROM".$db_prefix."choiceWHEREextends=$title[id]ORDERBYidASC"); $choices=""; $i=0; while($test=$db->fetch_array($tests)){ $i++; $checked=$test["IsDefault"]?"checked":false; if($title[choicetype]=="radio"){ $choices.="    <b>".chr(64+$i)."</b><inputname=\"radio[$title[id]]\"type=\"radio\"value=\"$test[choice]\"$checkedcheck=\"^0$\"warning=\"$title[title]\">$test[choice]  ";// }else{ $choices.="    <b>".$chars[$i]."</b><inputname=\"checkbox[$title[id]][]\"type=\"checkbox\"value=\"$test[choice]\"$checkedcheck=\"^0{1,}$\"warning=\"$title[title]\">$test[choice]  ";// } } eval("\$titlelist.=\"".gettemplate("test_title_list")."\";");}eval("\$header=\"".gettemplate("test_header")."\";");eval("\$footer=\"".gettemplate("test_footer")."\";");eval("dooutput(\"".gettemplate("test_test")."\");");?>(3)下面為考生通過提交答案后,自動計算得分和給出錯誤題目及正確答案運行結果,如圖5.2.2(3)所示。圖5.2.2(3)考生提交答案后運行結果5.2.3后臺詳細設計與實現后臺首頁設計(1)在線考試系統的后臺首頁是管理員對網站信息進行管理的首頁面。在該頁面中,管理員可以清楚地了解網站后臺管理系統包含的基本操作。在線考試網后臺首頁包含的主要模塊如下:試卷管理:主要包括查看試卷列表、添加試卷信息和刪除試卷信息??碱}信息添加:主要用于添加為各類試卷添加單選題、多選題,并設置每題的分數及內容??碱}信息管理:主要包括查看考題列表、修改考題信息和刪除考題信息。查看考試題目列表:跳轉到前臺。退出管理:主要用于退出后臺管理系統。(2)下面為本系統的后臺登錄頁面,如圖5.2.3(2)所示。圖5.2.3(2)后臺登錄首頁(3)下面為管理員登錄后臺所顯示的后臺功能頁面,如圖5.2.3(3)所示。圖5.2.3(3)后臺功能主頁面試卷信息管理模塊設計試卷信息管理模塊主要包括查詢試卷信息、添加試卷信息、修改試卷信息和刪除試卷信息等4個功能。在實現試卷信息管理模塊時,為了更好地管理,因此把試卷單獨存儲于一個數據表test_thread中,這樣在錄入試卷信息時就可以把試卷以下拉列表的形式從數據庫中讀取出來。這種從下拉列表中動態顯示數據表某列的字段值的方法,不僅方便管理員更快捷、靈活地操作在線考試系統,更大大提高了工作效率,達到事半功倍的效果。下拉列表是一種最節省空間的數據顯示方式,正常狀態下只能看到一個選項,單擊控制按鈕后,可以顯示一定數量的選項,如果超出這個數量,會自動顯示滾動條,管理員可以通過拖動滾動條來選擇各選項。下面介紹從下拉列表中動態顯示數據表某列的字段值的方法。首頁,創建與數據庫的連接。代碼如下:<?php$id=mysql_connect('localhost','root','admin');mysql_select_db("onlinetest",$id);?>然后應用下拉列表框和select查詢語句相結合實現在下拉列表中顯示數據表中的online_ktlb字段的值,通過while循環語句進行輸出。代碼如下:<?php$query=mysql_query("select*fromtest_thread"); while($myrow=mysql_fetch_array($query)){ ?><optionvalue="<?phpecho$myrow[id];?>"><?phpecho$myrow[name];?></option><?php}?>(1)下面為管理員添加試卷時的運行界面。添加試卷運行結果如圖5.2.3所示。圖5.2.3添加試卷運行結果(2)管理員登錄后,單擊“考試列表”超鏈接,進入到查詢試卷信息頁面,選擇試卷類別后,單擊“考試名稱”,將查詢出該試卷下的所有考題信息。同時提供修改考題信息和刪除考題信息的功能。查詢考題信息頁面的運行結果如圖5.2.3(2)所示。圖5.2.3(2)考試信息管理運行結果(3)考題信息管理,功能有添加考題信息、編輯考題信息和刪除考題信息,以及添加選項功能。查詢考題信息頁面的運行結果如圖5.2.3(4)所示。圖5.2.3(4)考題信息管理運行結果(4)添加考題信息頁面的運行結果如圖5.2.3(5)所示。圖5.2.3(5)添加考題信息運行結果(6)添加考題選項信息頁面的運行結果如圖5.2.3(6)所示。圖5.2.3(6)添加考題選項信息運行結果(7)添加考題類型分值設置信息頁面的運行結果如圖5.2.3(7)所示。圖5.2.3(7)添加考題選項信息運行結果第六章系統測試6.1測試環境服務器端:Windows7旗艦版、Apache2.2、MySQL客戶端:Windows7旗艦版、360安全瀏覽器5.0正式版、IE9.06.2什么是軟件測試軟件測試是在軟件投入運行前,對軟件需求分析、設計規格說明書和編碼的最終的復審,是軟件質量保證的關鍵步驟。確切的說,軟件測試就是為了發現錯誤而執行的過程。一般分為兩個階段:(1)單元測試:在編完一模塊后進行測試;(2)綜合測試:在開發完軟件后進行綜合測試。6.3軟件測試的目標與方法G.Myers給出了關于測試的一些規則,這些規則可以看作是測試的目標或定義:(1)測試是為了發現程序中的錯誤而執行程序的過程;(2)好的測試方案是極可能發現迄今為止尚未發現的錯誤的測試;(3)成功的測試是發現了至今為止尚未發現的錯誤的測試。測試任何軟件都有兩種方法:黑盒測試和白盒測試法。黑盒測試法(又稱功能測試法)是把程序看成一個黑盒子,完全不考慮程序的內部結構和處理過程,是在程序接口進行的測試,它只檢查程序功能是否按照規格說明書的規定正常使用。白盒測試法(又稱結構測試法)是把程序看成裝在一個透明的白盒子里,也就是完全了解程序的結構和處理過程,這種方法按照程序內部的邏輯測試程序,檢驗程序中的每條通路是否都能按照預定要求正確工作。通過測試并不能證明程序就是完全正確的,但我們的目的就是要通過測試保證軟件的可靠性,因此,必須仔細設計測試方案,力爭用最少的測試發現盡可能多的錯誤。6.4系統評估該系統是面向學校以及社會各種形式的在線考試,所以所設置的模塊基本可以滿足考試的基本要求,盡可能的貼近以往的考試形式。其中涉及到管理員、考試信息管理、考題信息管理、設置考題類型分值信息等。根據用戶的類型不同其訪問權限也有所不同,按權限可分為:管理員、考生。后臺通過管理員的用戶名和密碼,前臺客戶端則無須登錄可以直接參加考試,而且提交答案后立即得到分數和錯誤題目及正確答案。第七章總結與展望計算機網絡技術的日益成熟及校園網的逐步普及,為考試信息化提供了良好的基礎。利用計算機和網絡技術對考試進行管理,具有人工管理無法比擬的優點。在這次的畢業設計中主要設計一個易于管理和維護的在線考試系統,具有一定的通用性,能夠滿足多套考試要求。為學生利用網絡自主學習提供條件;為不同課程的網上考試提供平臺。通過這次畢業設計,對很多東西有了新的認識和新的見解,認識問題的和思考解決辦法有了本質上的進步,特別是對一個系統開發的模式有了更深的認識,對專業技能的運用更熟練。網上考試系統的開發過程中也遇到了很多問題,開始做需求時不確定考試系統到底應該具備那些功能,只知道主要功能就是有試題能考試,但具體流程,怎樣實現這些功能就很模糊,所以查看了很多資料才理清楚。數據庫設計也是個難點,不明確要實現哪些功能就不能很好的把數據庫設計好。設計數據庫就是開發一個系統的核心。設計數據庫一定要思路清晰,各個數據的流向各個表之間的關系一定要弄清楚,透徹。數據庫設計出錯了對以后整個系統的影響是最直接的。所以做需求時一定要做好需求分析,考慮完善,數據庫設計要謹慎。總之需求分析時能做好就能降低需求變更,再加上設計時考慮到的技術可行性就可以大幅度的降低需求變更。最終還是完成了預定的需求功能??吹阶约邯毩⑼瓿刹⒖梢允褂玫南到y給了我很大信心。在本系統的設計過程和論文編寫過程中,很多老師、同學都給與了我許多無私的幫助,尤其是我的指導老師給我的論文提出了很多寶貴的修改意見,在這里我向這些無私幫助我的人表示衷心的感謝。參考文獻[1]DavidPowers著.PHP與Dreamwaver基礎教程[M].北京:人民郵電出版社,2008.1~50[2]聶慶鵬,毛書鵬,王志樂編著.PHP+MySQL動態網站開發與全程實例[M].北京:清華大學出版社,2007.30~70[3]王維.基于PHP和MySOL的考試系統的研究[D].中國教青技術裝備,2010.1~7[4]趙鶴芹.設計動態網站的最佳方案:Apache+PHP+MySQL[D].計算機工程與設計,2007.1~4[5]宗杰,馬國強,劉冉編著.PHP網絡編程學習筆記[M].北京:電子工業出版社,2008.1~68[6]王石,楊英娜編著.精通PHP+MySQL應用開發[M].北京:人民郵電出版社,2006.60~100[7]TimBoronczyk,MartinE.Psinas編著.熊偉譯.PHP&MySQL范例精解——創建、修改、重用[M].北京:清華大學出版社,2009.23~56[8]丁月光,孫更新,閆吉輝編著.PHP+MySQL動態網站開發[M].北京:清華大學出版社,2008.243~258[9]張銀鶴,肖新峰,崔程編著.PHP+Ajax網站開發典型實例[M].北京:電子工業出版社,2009.15~50[10]凱文瑞克著.田佳淳改編.PHP5&MySQL5基礎與實例教程[M].北京:中國電力出版社,2007.10~87[11]張仿彥,劉中華,楊麗編著.PHP項目開發全程實錄[M].北京:清華大學出版社,2008.567~614[12]徐保民等編著.PHP編程基礎及應用實例集錦[M].北京:人民郵電出版社,2001.37~54[13]宮垂剛,韋一,張華豐編著.PHP完全自學手冊[M].北京:機械工業出版社,2009.1~165致謝四年的讀書生活在這個季節即將劃上一個句號,而于我的人生卻只是一個逗號,我將面對又一次征程的開始。四年的求學生涯在師長、親友的大力支持下,走得辛苦卻也收獲滿囊,在論文即將付梓之際,思緒萬千,心情久久不能平靜。首先要感謝我的指導老師朱凱老師,在論文寫作期間,朱凱老師給予了我極大的幫助,他對我的嚴格要求使得我的論文有了一定的成果。他深厚的理論素養、豐富的實踐經驗、嚴謹的治學態度和扎實的治學方法影響和激勵著我,使我受益匪淺。在此謹致以誠摯的敬意和衷心的感謝。其次,我要感謝華科學院的專業課所有老師們,是他們在我的專業課的學習過程中無私的教授給我許多專業知識和技能,使我能夠在論文寫作的過程中順利解決難題和疑問。同時還要感謝所有給予我關心和幫助的同學和朋友們,她們在生活和學習中給了我大量的幫助,對她們的關懷和幫助致以崇高的敬意。在今后的人生道路上,我一定謹遵恩師的教誨,發揮自己的潛能。最后,對閱讀和評審本論文的各位老師表示衷心的感謝!基于C8051F單片機直流電動機反饋控制系統的設計與研究基于單片機的嵌入式Web服務器的研究MOTOROLA單片機MC68HC(8)05PV8/A內嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機溫度控制系統的研制基于MCS-51系列單片機的通用控制模塊的研究基于單片機實現的供暖系統最佳啟停自校正(STR)調節器單片機控制的二級倒立擺系統的研究基于增強型51系列單片機的TCP/IP協議棧的實現基于單片機的蓄電池自動監測系統基于32位嵌入式單片機系統的圖像采集與處理技術的研究基于單片機的作物營養診斷專家系統的研究基于單片機的交流伺服電機運動控制系統研究與開發基于單片機的泵管內壁硬度測試儀的研制基于單片機的自動找平控制系統研究基于C8051F040單片機的嵌入式系統開發基于單片機的液壓動力系統狀態監測儀開發模糊Smith智能控制方法的研究及其單片機實現一種基于單片機的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機沖床數控系統的研究基于CYGNAL單片機的在線間歇式濁度儀的研制基于單片機的噴油泵試驗臺控制器的研制基于單片機的軟起動器的研究和設計基于單片機控制的高速快走絲電火花線切割機床短循環走絲方式研究基于單片機的機電產品控制系統開發基于PIC單片機的智能手機充電器基于單片機的實時內核設計及其應用研究基于單片機的遠程抄表系統的設計與研究基于單片機的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機系統單片機系統軟件構件開發的技術研究基于單片機的液體點滴速度自動檢測儀的研制基于單片機系統的多功能溫度測量儀的研制基于PIC單片機的電能采集終端的設計和應用基于單片機的光纖光柵解調儀的研制氣壓式線性摩擦焊機單片機控制系統的研制基于單片機的數字磁通門傳感器基于單片機的旋轉變壓器-數字轉換器的研究基于單片機的光纖Bragg光柵解調系統的研究單片機控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機的多生理信號檢測儀基于單片機的電機運動控制系統設計Pico專用單片機核的可測性設計研究基于MCS-51單片機的熱量計基于雙單片機的智能遙測微型氣象站MCS-51單片機構建機器人的實踐研究基于單片機的輪軌力檢測基于單片機的GPS定位儀的研究與實現基于單片機的電液伺服控制系統用于單片機系統的MMC卡文件系統研制基于單片機的時控和計數系統性能優化的研究基于單片機和CPLD的粗光柵位移測量系統研究單片機控制的后備式方波UPS提升高職學生單片機應用能力的探究基于單片機控制的自動低頻減載裝置研究基于單片機控制的水下焊接電源的研究基于單片機的多通道數據采集系統基于uPSD3234單片機的氚表面污染測量儀的研制基于單片機的紅外測油儀的研究96系列單片機仿真器研究與設計基于單片機的單晶金剛石刀具刃磨設備的數控改造基于單片機的溫度智能控制系統的設計與實現基于MSP430單片機的電梯門機控制器的研制基于單片機的氣體測漏儀的研究基于三菱M16C/6N系列單片機的CAN/USB協議轉換器基于單片機和DSP的變壓器油色譜在線監測技術研究基于單片機的膛壁溫度報警系統設計基于AVR單片機的低壓無功補償控制器的設計基于單片機船舶電力推進電機監測系統基于單片機網絡的振動信號的采集系統基于單片機的大容量數據存儲技術的應用研究基于單片機的疊圖機研究與教學方法實踐基于單片機嵌入式Web服務器技術的研究及實現基于AT89S52單片機的通用數據采集系統基于單片機的多道脈沖幅度分析儀研究機器人旋轉電弧傳感角焊縫跟蹤單片機控制系統HYPERLINK"/detail

溫馨提示

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

評論

0/150

提交評論