做個考試系統,題庫中有很多題
現在從題庫中抽五十個題組成一張試卷,題型不一定一樣,每個人做的題也不一定一樣,答完後提交,自動記分
(以上描述已實現)
現在需要新增的功能:防止斷電或掉線,所以呢要求是實時保存結果。
比如一個人做到三十題斷電了,來電後重做還是那張試卷,且之前做的結果還有,如:考生第一題選a。重新做時第一題已選好a,不用再做。
問:
   1,每個用戶考的不一樣,所以每個用戶的試卷信息要保存。有沒有必要用xml?數據庫怎麼樣的結構來保存用戶做的結果好一點?
   2,實時保存的問題:如果用服務器控件,時時刷新肯定是不行的。只能用html控件+javascript(或ajax),給點實時保存的思路。

解决方案 »

  1.   

    1、数据库结构跟你存储最终答案的结构一样就可以啊
       用XML当然也可以实现,XML能实现数据库所需要的功能,只是性能可能没有数据库高而已
    2、用AJAX就可以,其实也不要去找什么AJAX的框架,就是XMLHTTP技术嘛
       考生没答完一道题,在前台用Javascript发送xmlhttp请求给后台去存储答案,不会刷新页面
      

  2.   

    开始的时候把考生的试卷保存
    结构同数据库同
    至于载体可以是XML或者数据库或者其他每做一道题都用Ajax去保存考生考试页面进来的时候有个判断
    如果以前考过就读取以前记录
    否则重新出题
      

  3.   

    至于保存的地方可以用XmlHttp或者轻量级的Ajax框架,比如AjaxPro
    代码Google一下,很多
      

  4.   

    如果所有的题都是选择题~~那么设计好一套ajax客户端脚本~~让考生每做/改一道题目的时候向服务器提交答案~`例如:题目:x,答案:y 这样简单的数据组织方式~~~
    只是给出题目的顺序(客户端顺序),因为主要信息服务器端已经记录了~~`
    其实好比是聊天室一样~~`也没什么必要用到xml~~慢慢尝试吧~~
      

  5.   

    停电----》你要把考生的试卷保存到数据库或XML都可以
    无刷新---》你用httprequest 或用 ajaxpro都可以实现
      

  6.   

    生成题目以后在服务端保存一份,在cookie里保存一份,在没有提交前自动保存到cookie,提交时候校验一下cookie和数据库的题目是否一致(防止作弊.
    答题时间放到数据库中和cookie中
    客户端每隔一段时间就更新一下本地cookie中答题时间,这样即使本机断电,那么cookie里也有已经答题的时间了.