閱讀屋>考試> 線上考試系統中的考試時間控制論文

線上考試系統中的考試時間控制論文

線上考試系統中的考試時間控制論文

  論文摘要:線上考試系統作為現代遠端教育的一種教學效果考察手段,在現代遠端教育中已發揮越來越重要的作用,避免了試卷印刷、考場安排、組織考試、閱卷等諸多程式,為提高考試效率和標準化水平,提供了一種新的考試形式,使考試突破了時空的限制。本文就線上考試系統中的考試時間在客戶端與伺服器端的雙重控制進行了研究,提供了一種解決線上考試系統中考試時間控制的方法。

  論文關鍵詞:線上考試系統時間控制JSSESSION

  一個成熟的線上考試系統應具有易操作、功能完備、故障率低等特點,一般的'線上考試均採用B/S模式,使考試過程在客戶端瀏覽器完成,考試結果則儲存在伺服器中。這種模式具有簡化考生操作程式、及時回收和儲存考試結果、系統易於擴充和修改等特點。每場考試都是有時間限制的,不允許考生超時答題,由於線上考試系統具有分佈性和考試開始時間的差異性,為了體現考試的公平性,對考試用時,也就是考試時間進行精確控制就顯得尤為重要。

  一、在客戶端控制考試時間

  在客戶端控制考生的考試時間是比較簡單的,其原理是:當考試開始考試時立即按考試資訊表中設定的考試用時進行倒計時,當考試時間用完,則系統自動將考生的答題資料傳遞到考試處理頁,對考生的考試情況(答題的答案、考生的資訊等)進行記錄並自動進行評分。

  由於倒計時工作必須在客戶端完成,要實現這個功能,就必須選擇客戶端指令碼進行控制,可以採用VBSCRIPT或&#106avascript.。

  下面是以&#106avascript為例在客戶端進行考試時間控制的例子:

  另外,要實現考試時間到自動交卷,還要進行兩個操作,一是在網頁body項中增加onload事件,當網頁開啟時即進行計時(也可設定為單擊某個按鈕開始計時):

  二是在需要顯示考試時間倒計時的地方顯示倒計時,實現方法是將該位置所在的層(div)的ID設定為timeinfo即可。

  另外,點選交卷的按鈕(submit)的名稱必須設定為本例中的submit,設計者也可視情況進行程式修改。如:

  二、在伺服器端控制考試時間

  僅僅在客戶端設定考試時間限制是不夠的,因為要考慮到,使用者可以在客戶端遮蔽JS程式碼,或者偽造一個客戶端頁面進行超時資料提交,這時就要考慮使用伺服器端同步進行時間控制。 下面以使用ASP技術開發的線上考試系統為例介紹考試時間伺服器端控制方法思路:

  第一步:當用戶開啟考試介面或點選考試按鈕進行考試時,即在該頁面建立一個SESSION,用於記錄使用者的開始考試時間。

  session("aspexamstartsj")=now()‘記錄使用者開始考試時間到session中。

  session.timeout=150‘設定session超時時間為150分鐘,此項可根據考試時間靈活設定。

  第二步:當考生考試時間到或點選交卷按鈕後,進行考試時間的判斷,有兩種方法,一是判斷上一步設定的session是否存在,如果不存在則說明考試時間以過活使用者是從非法途徑提交的答題資訊(偽造客戶端),實現思路如下:

  二是進行時間比對,若開始時間和結束時間差超過預定考試時間(以120分鐘為例),則說明考試時間過期。要進行兩個時間的時間差計算,在ASP中就要用到DateDiff函式。

  DateDiff(interval,date1,date2):返回Variant(Long)的值,表示兩個指定日期間的時間間隔數目。

  其中,interval引數表示返回值的型別,如m表示返回data2與data1之間相差的分鐘數。

  具體實現方法如下:

  三、小結

  上述兩種方法分別從客戶端和伺服器端就如何解決考試時間限制提出了兩種方案。第一種方法確保在考試時間結束的時候能夠自動將使用者的答題資訊提交到伺服器。第二種方法是確保線上考試系統客戶端頁面不夠篡改。只有將兩種方法結合運用,才能保證系統功能的良好實現與執行。

  參考文獻:

  [1]ASP動態網站開發教程清華大學出版陳建偉李美軍施建強等編著;

  [2]電子商務網站建設教程清華大學出版社張瑜趙卓群等編著;

  [3]百度百科,DataDiff函式,http://baike.baidu.com/view/327446.htm。

【線上考試系統中的考試時間控制論文】相關文章: