毕业论文范文网-论文范文
电气工程 会计论文 金融论文 国际贸易 财务管理 人力资源 学前教育 德语论文 工程管理 文化产业 工商管理 会计专业 行政管理 广告学
机械设计 汉语文学 英语论文 物流论文 电子商务 法律论文 工商管理 旅游管理 市场营销 药学论文 播音主持 人力资源 金融论文 保险学
制药工程 生物工程 包装工程 模具设计 测控专业 工业工程 教育管理 行政管理 计算机论 电子信息 市场营销 法学论文 财务管理 投资学
体育教育 小学教育 印刷工程 土木工程 书法论文 护理论文 心理学论 信息管理 公共事业 给水排水 新闻专业 摄影专业 广电编导 经济学
  • 范文首页 |
  • 毕业论文 |
  • 论文范文 |
  • 计算机论文 |
  • 外文翻译 |
  • 工作总结 |
  • 工作计划 |
  • 现成论文 |
  • 论文下载 |
  • 教学设计 |
  • 免费论文 |
  • 原创论文 |
搜索 高级搜索

原创毕业论文

当前位置:毕业论文范文网-论文范文 -> 免费论文 -> 计算机论文

asp考试系统+文档

作者: 浏览:8次
免费专业论文范文
免费专业论文
政治工作论文
计算机论文
营销专业论文
工程管理论文范文
医药医学论文范文
法律论文范文
生物专业论文
物理教学论文范文
人力资源论文范文
化学教学论文范文
电子专业论文范文
历史专业论文
电气工程论文
社会学专业论文
英语专业论文
行政管理论文范文
语文专业论文
电子商务论文范文
焊工钳工技师论文
社科文学论文
教育论文范文
数学论文范文
物流论文范文
建筑专业论文
食品专业论文
财务管理论文范文
工商管理论文范文
会计专业论文范文
专业论文格式
化工材料专业论文
英语教学专业论文
电子通信论文范文
旅游管理论文范文
环境科学专业论文
经济论文
人力资源论文范文
营销专业论文范文
财务管理论文范文
物流论文范文
财务会计论文范文
数学教育论文范文
数学与应用数学论文
电子商务论文范文
法律专业论文范文
工商管理论文范文
汉语言文学论文
计算机专业论文
教育管理论文范文
现代教育技术论文
小学教育论文范文
机械模具专业论文
报告,总结,申请书
心理学论文范文
学前教育论文范文

收费计算机专业论文范文
收费计算机专业论文
Delphi
ASP
VB
JSP
ASP.NET
VB.NET
java
VC
pb
VS
dreamweaver
c#.net
vf
VC++
计算机论文
毕业论文范文题目:asp考试系统+文档,论文范文关键词:asp考试系统+文档
asp考试系统+文档毕业论文范文介绍开始:

目录
1 前言 2
1.1 网上考试系统的背景、意义和现状分析 2
2 系统分析 2
2.1系统需求分析 2
2.2 系统基本功能 3
3 开发工具的概述 4
3.1 ASP的简介 4
3.2 Dreamweaver MX2004的简介 4
3.3 SQL Server数据库简介 4
4 系统的总体设计 5
4.1 主要功能模块 5
4.2 系统数据库分析与设计 6
4.3 系统数据工作流 10
5 系统设计与实现 10
5.1 登录界面的设计 10
5.1.1 主登录界面设计 11
5.1.2 管理员登录界面设计 13
5.2 管理员模块 15
5.2.1 科目管理模块(adminsubject.asp) 15
5.2.2 题库管理模块(adminhouse.asp) 17
5.2.3 试卷生成模块(adminpaper.asp) 20
5.2.4 考试信息模块(adminsentnotice.asp) 22
5.2.5考生信息管理模块(adminuser.asp) 23
5.3 实现领导审批界面(newspass.asp) 24
5.4 实现普通考生考试界面(subject.asp) 25
5.4.1 选择科目和考试界面设计 25
5.4.2 查询成绩界面 28
5.5 考试新闻模块(news.asp) 29
6 心得体会 32
7 展望 33
8 致谢 34

 

网上考试系统的设计

 摘要:本系统采用了模块化的设计思想进行开发,根据学校考试工作的需求分析,并采用用户权限管理的设计思想对系统功能模块进行划分,实现了考生的基本信息管理;试题库更新操作;试卷的自动生成;自动评卷;考生网上考试和查询以往考试成绩等功能。本文从系统的设想到实现过程作了详细的说明,对完成特定功能模块的工作原理详细作了解说。
 系统使用ASP动态网页技术,以VBScript和java script脚本语言和HTML超文本标记语言结合为编写工具,结合SQL server 2000数据库技术开发。
 关键词:网上考试系统;ASP;SQL Server
 
 The design of online examination system

YUAN Rixi
School of information science and technology, Zhanjiang Normal University, Zhanjiang 524048

Abstract: According to the demanding analysis of the school examinations, the system adopts the design thinking of modularization and of the user power in managing to divide the system functions into modules.It realizes the total functions about the basic information management of examinees; to update the question database;to produce examination papers automatic; to eva luate examination papers automatic; examinees could exam online and also could check the past examination results, and so on.. This article makes a detail illustration on how to design the system and make it come true, especially to completed the specific function modules.
 The system uses the ASP dynamic homepage technology, and compiles the tool VBScript and java script as script language and union the HTML hypertext mark language, unifies SQL server 2000 database technology to develope.
Key words: examination online system; ASP; SQL Server


1 前言
1.1 网上考试系统的背景、意义和现状分析
 网上考试系统课题产生的背景是当今教育信息化的趋势。目的是充分利用学校现有的计算机软、硬件资源和网络资源实现无纸化考试以避免传统手工考试的不足。网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。
 相比传统的考试方式,网上考试系统的主要好处是一方面可以动态地管理各种考试信息,只要准备足够大的题库,就可以按照要求自动生成各种试卷;另一方面,考试时间灵活,考生可以在规定时间段内的任意时间参加考试;另外计算机化的最大特点是阅卷快,系统可以在考试结束时当场给出考试结果,计算机阅卷,大幅度提高考试成绩的客观性和公正性[2]。
 网上考试系统是现阶段研究开发的一个热点。它是建立在互联网上的应用系统,客户端的配置可以说是极为简单,使考试不受地域的局限。在网络技术逐渐渗入到社会生活各个层面的今天,采用网络考试方式将是以后考试发展的趋势。

 系统分析
2.1系统需求分析
 在教学活动中,考试是检验教师教学成果和学生学习效果的主要手段之一。在调查中发现,现阶段学校与社会上大都采用传统的考试方式开展考试,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。此外,还要有大量的准备工作,如准备试卷、准备考场等等。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分繁琐和非常容易出错的事情,试卷的编辑和整理工作量大。事实表明,传统的手工组卷过程,存在不少弊端[5]。
 可以说传统的考试方式已经不能适应现代大量的、专业化的考试的需要。随着计算机和网络技术应用的迅猛发展和不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来组织考试,以减轻教师的工作负担及提高工作效率,与此同时提高考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。为此,本系统主要完成这样一些工作:
 1、实现教师网上组卷
 在现有题库的基础上,教师组卷时,只须提出试卷的要求,便可以从题库中选择既定数量的题目生成试卷[5]。简而言之,就是:教师登录→选择考试科目→编辑题目→生成试卷→等待领导审批→考试。
 2、实现学生网上答卷
 传统考试形式单一枯燥,并不能激发学生们学习兴趣。他们希望能够换一种形式,例如通过电脑进行网上测试。因为,首先是变换了形式,符合年青人的心态,新颖的界面、人性化的提示让人耳目一新;其次是可减少书写,标准化试题只需点击鼠标即可;再者,提交试卷后,系统很快给出评分,便于学生针对自己的成绩进行查漏补缺,免去了漫长难熬地等待[5]。简而言之,就是:学生登录→选择科目→进入考场→考试计时→学生答卷→试卷提交→成绩查询。
 3、实现试题库维护
 教师作为本系统的管理员,对试题库有维护的义务。教师可以实时地对科目和考试题目进行编辑。科目是出题的前提,题库是出卷的前提,试卷是考试的前提,所以,这几个模块相互关系十分密切,其中的数据都是紧密联系的,相关的,因此对数据库的实时更新和数据存取功能都提出了很高的要求。
 
2.2 系统基本功能
 确定网上考试系统的功能后,根据系统的功能需求,该系统包括三种用户:考生、教师、学校领导。系统的大体流程为:教师组卷,包括选择科目,在题库中随机出题,然后生成试卷。生成的试卷要通过领导审批才生效,才可用于考试。教师作为系统的管理者,有权发布考试的有关新闻。用户登录系统即可浏览最新的考试信息。学生进入系统后,选择考试科目,就可进行考试。对于已经考过的考试则可以查看成绩。系统工程功能图如下:
 图2-1 系统基本功能图

3 开发工具的概述
3.1 ASP的简介
 ASP(Active Server Pages) 动态网页,是微软公司推出的一种以取代CGI(Common Gateway Interface)通用网关接口的技术。ASP本身并不是一种脚本语言,它只是提供了一种使镶嵌在HTML页面中的脚本程序得以运行的环境[1]。通过ASP,可以结合HTML网页、ASP指令和ActiveX控件建立动态、交互且高效的Web服务器应用程序。所有的程序都在服务器端执行,减轻了客户端浏览器的负担,大大提高了交互的速度[8]。
 ASP是目前最流行的开放式Web服务器应用程序开发技术,具有编程简单、解释执行、支持广泛、扩充性强、方便安全、支持多种开发工具、且与浏览器无关等优点[5]。
 
3.2 Dreamweaver MX2004的简介
 Dreamweaver是Macromedia公司推出的可视化网页编辑工具,它是目前最流行的网页设计软件之一,它提供了可视化的网页开发环境,具有所见即所得的功能。与Fireworks和Flash一起被誉为网页制作“三剑客”[4]。
 与众多的网页制作工具相比,Dreamweaver MX的优越之处在于它的可视化编辑和对代码的操作可以完美地融合。除了页面编辑和排版外,在代码生成上它还有过人之处。Dreamweaver MX对代码的生成有着精确的控制,通过可视化操作所生成的代码可以同步地显示在页面中。同时,对HTML代码的修改也可以同步地显示在可视化操作的窗口里。Dreamweaver MX的另一出色之处是可以创建兼容性极好的网页,以适应各种平台的各种浏览器,包括对微软公司的Internet Explore、网景公司的Navigator和Opera的支持。最具特色的是,Dreamweaver MX是可以定制的。用户可以创建自己的对象和命令修改菜单和快捷键,可以通过java script来为其创建新的行为和【属性】面板,也可以通过插件管理器来安装第三方提供的一些具有特殊功能的插件[4]。
 
3.3 SQL Server数据库简介
  Microsoft SQL Server是运行于NT操作系统上的、基于客户机/服务器的关系型数据库管理系统。SQL Server使用客户机/服务器结构把工作负荷分解成分别在服务器上和客户机上执行的任务。客户机应用程序可以运行在一个或多个客户机机器上,也可以运行在服务器的,负责向用户提供数据。服务器负责管理和分配服务器资源[7]。
 作为关系型数据库领域出类拔萃的产品,Microsoft SQL Server2000数据库管理系统可以满足各种类型不同用户和独立软件供应商商业程序的要求,可以说Microsoft SQL Server2000是功能相当强大的关系型数据库,它在易用性、伸缩性、可靠性和数据仓库等方面都具有优良的性能[7]。
(1)支持企业级运算、支持C/S模型、更好的性能和更方便的操作。
(2)功能增强:海量数据存储、数据复制、数据转换服务、分布式事务、全文检索。
(3)支持多种协议(TCP/IP、NETBEUI)和支持分布式计算,分布式计算模型。
(4)ANSI/92标准兼容并进行T-SQL的增强[3]。
 
4 系统的总体设计
4.1 主要功能模块
     网上考试系统主要分为三类用户,教师(管理员)、考生和学校领导。根据各自不同的权限规定了相应的操作模块。
 1、后台管理:
用户基本信息管理
自由设置考试科目
自由设置题库
自动生成试卷
多功能查询功能
考试新闻发布
2、考试功能:
考试科目的选择
考试时间的控制
考试成绩自动生成功能
多功能查询功能
3、领导审核功能:
 审核考试信息的设置。

4.2 系统数据库分析与设计
 根据系统功能设计的要求以及功能模块的划分,数据库需要存储的信息如下:
 用户的信息:包括考生id、考生姓名、密码、所在班级、管理员权限。
 班级的信息:班级的名称
 考试科目信息:科目的编号、科目的名称
 题库信息:题目编号、题目内容、选项、答案、考试时是否被选过的标记
 试卷信息:考试编号、各种题目的数量和分值、考试时间、创建者、审核者、开始和结束日期、设置考试日期
 考生信息:考生考号、考试编号、是否考过标记
 考试成绩信息:考生的各种信息、考试信息、考试成绩
 新闻信息:新闻编号、标题、正文内容、创建人、创建日期
 根据功能要求在SQL Server2000里创建数据库,建立各数据表如下所述:
 用于存储所有用户的信息,建立用户信息表:
表1  examuser表
字段名 数据类型 长度 允许空 描述
Id Int 4 否 主键
Userid nvarchar 50 是 用户id
Username nvarchar 50 是 用户姓名
Pwd nvarchar 50 是 用户密码
Grade nvarchar 50 是 所属班级
Office nvarchar 50 是 所属单位
Duties nvarchar 50 是 职务
rank nvarchar 50 是 职务等级
ifadmin bit 1 是 管理员权限
 
 为了使考试分班级管理以及查询的方便,建立班级信息表:
表2   grade表
字段名 数据类型 长度 允许空 描述
grade nvarchar 50 是 班级名称

    为了储存考试的科目信息,建立科目信息表:
表3   examsubject表
字段名 数据类型 长度 允许空 描述
Id Int 4 否 主键
examsubject nvarchar 50 是 考试科目名称

     为了储存每次参加考试有哪些考生,建立考生信息表:
表4  testuser表
字段名 数据类型 长度 允许空 描述
Id int 4 否 标识:是
Testid Int 4 是 考试编号
Userid Int 4 是 考生编号
havetest bit 1 是 是否参加考试

     为了管理题库,建立题库信息表:
表5  examhouse表
字段名 数据类型 长度 允许空 描述
Id Int 4 否 主键,题号
Subject nvarchar 50 是 所属科目
Typt nvarchar 50 是 所属题型
Question ntext 16 是 题干
Text1 ntext 16 是 选项1
Text2 ntext 16 是 选项2
Text3 ntext 16 是 选项3
Text4 ntext 16 是 选项4
Text5 ntext 16 是 选项5
Text6 ntext 16 是 选项6
Answer nvarchar 50 是 正确答案
Mark int 4 是 标志该题是否已被选中标记

      为了设定的试卷信息,建立试卷信息表:
表6  exampaper表
字段名 数据类型 长度 允许空 描述
Testid Int 4 是 考试编号
Subject Nvarchar 50 是 考试科目
Totalper Int 4 是 试卷总分
Singlecount Int 4 是 单选题数目
Multicount Int 4 是 多选题数目
Judgecount Int 4 是 判断题数目
Singleper Int 4 是 单选题分值
Multiper Int 4 是 多选题分值
Judgeper Int 4 是 判断题分值
Testtime ntext 16 是 考试时间
Starttime datetime 8 是 开始时间
Endtime datetime 8 是 结束时间
Settime datetime 8 是 设置时间
setuserid Int 4 是 设置者
Passuserid int 4 是 审核者
Pasttime datetime 8 是 通过审核时间

     为了储存等待通过的考试计划,建立等待通过的考试计划信息表:
表7  waitforpass表
字段名 数据类型 长度 允许空 描述
Id Int 4 否 标识:是
Objname Nvarchar 50 是 待通过试卷名
Objid Int 4 是 考试计划编号
Passuserid Int 4 是 审核者
Passadvice Ntext 16 是 审核意见
Pastime Datetime 8 是 通过时间
ifpass int 4 是 是否已审核

     考试新闻发布功能需要储存新闻信息,建立考试新闻信息表:
表8  sentnotice表
字段名 数据类型 长度 允许空 描述
Id Int 4 否 标识:是
Noticeid Int 4 是 新闻编号
Title Ntext 16 是 新闻标题
Content ntext 16 是 新闻内容
Senttime Datetime 8 是 创建日期
Senter nvarchar 50 是 发布者

     为了储存每个考生的考试成绩信息,建立考试成绩信息表:
表9  examscore表
字段名 数据类型 长度 允许空 描述
Id int 4 否 标识:是
Userid Int 4 是 考生考号
Username nvarchar 50 是 考生姓名
Grade nvarchar 50 是 所属班级
Office nvarchar 50 是 所属单位
Duties nvarchar 50 是 职务
Subject nvarchar 50 是 考试科目
Testid Int 4 是 考试编号
Starttime Datetime 8 是 开始时间
Endtime Datetime 8 是 结束时间
Score Int 4 是 考试成绩

4.3 系统数据工作流
     后台数据库是支撑本系统运行的基本,具体的数据流:如图4-1所示。

                图4-1 考试系统的数据工作流示意图
 
5 系统设计与实现
 为使系统界面协调和统一,操作方便,设计运行本系统是以一种网页框架的形式出现的。框架是一种特殊的网页,就是一个页面分成几个部分,其中每个部分都是独立的,在一个框架中的超链接可以链接到目标框架,这样在单击超链接的时候,整个页面保持不变[9]。根据不同的用户登录权限系统分为两个大致相同的主框架页面main.asp和adminmain.asp,其中分别超链接四个页面,用于显示系统标题、左侧导航条、系统时间和主操作页面。
 此外,系统利用一个mycss.css文件来美化界面,通过应用CSS技术,可以很方便地让整个网站具有统一的风格,而这正是CSS技术引人入胜的地方[10]。
 
5.1 登录界面的设计
 本模块提供了用户的登录界面及身份是否合法的验证功能。根据用户所持权限登录界面有所不同。如果是以教师身份登录,将可以进入系统后台管理模块,实现对考生基本信息,考试科目信息,试题库,试卷和考试新闻等信息的编辑和维护;如果以领导的身份登录,将可以对教师生成的试卷进行审批,浏览考试新闻,甚至可以参与考试。如果以考生的身份进入系统,则可参加考试,查询考试成绩等。据此,系统有两个登录界面,一个是前台的登录界面,另一个是后台管理员登录界面。
5.1.1 主登录界面设计
 程序运行界面如下:
 
 图5-1 主登录界面
 
 程序采用cookie集合记录已经登录的用户信息,所以首先要把已经登录的cookie信息删除,程序如下:
<%  Response.Cookies("userid")=""     '用户名
    Response.Cookies("username")=""   '真实姓名
    Response.Cookies("pwd")=""       '密码
    Response.Cookies("grade")=""     '班级
    Response.Cookies("office")=""     '单位
    Response.Cookies("duties")=""     '职务  
    Response.Cookies("rank")=""       '级别
    Response.Cookies("ifadmin")=""    '是否管理员
    response.cookies("subject")=""    '考试科目
    response.cookies("testtime")=""   '考试时间
    response.redirect "login.asp"%>
 对于登录的用户,要进行登录信息验证。对用户输入的登录信息,进行提交,用checkusr.asp文件进行处理。程序如下:
 <!--#include file="conn.inc"
 '连接数据库-->
 <%userid=request("userid")
 pwd=request("pwd")
 kind=request("kind")
 '接收表单信息
 sql="select * from examuser where userid='"&userid&"' and pwd='"&pwd&"'"
 response.write sql
 set rs=conn.execute(sql)
 if rs.eof then'如果不存在对应的用户密码
   response.redirect "login.asp?temp=error"
 else'如果用户密码检验正确
   userid=rs("userid")
   username=rs("username")
   grade=rs("grade")
   office=rs("office")
   duties=rs("duties")
   rank=rs("rank")
   ifadmin=rs("ifadmin")
   rs.close 
 end if
     Response.Cookies("userid")=userid
     Response.Cookies("username")=username
     Response.Cookies("pwd")=pwd
     Response.Cookies("grade")=grade
     Response.Cookies("office")=office
     Response.Cookies("duties")=duties
     Response.Cookies("rank")=rank 
     response.redirect "main.asp"%>
 如果输入的信息有误,则显示图5-2的提示,并要求重新登录。
 
 图5-2 登录出错提示图
 
 如果通过系统验证,则可进入的系统主界面,进行相应的考试或查询操作,领导还可以审核考试计划。如下图:
 
 图5-3 考生和领导操作主界面
 
5.1.2 管理员登录界面设计
 如果用户想要以管理员的身份进入系统,需要判断该用户是否拥有管理员权限。通过单击图5-1中的“管理员登录”超链接进入下面的登录界面:

 图5-4 管理员登录主界面
 
 利用admincheckusr.asp文件对用户提交的表单信息进行处理,如果验证出该用户没有管理员权限,则要求重新登录并给出以下提示:
 
 图5-5 非管理员登录提示图
 
 是否拥有管理员权限是根据examuser表的字段ifadmin来判断的,其默认值为0,为1则表示是系统管理员。对于合法的管理员用户则可进入系统管理界面,进行相应的操作。管理员进入的系统主界面图如下:
 
 图5-6 管理员操作主界面
    值得注意的是,无论是考生、领导还是系统管理员,进入系统后都可以选择左边导航条的“重新登录”超链接,退出系统后再进行重新登录操作。

5.2 管理员模块
 管理员对系统的操作是根本性的,负责对整个后台工作的管理,对于整个考试系统的运行都有着举足轻重的影响。下面将分别介绍管理员操作的各个功能模块的设计。
 
5.2.1 科目管理模块(adminsubject.asp)
 为了便于系统的管理,将试卷按科目进行分类,这也符合实际。考试的科目不是一成不变的,所以管理员要根据实际需要对考试的科目进行管理,包括对科目的增加、删除、编辑等操作。该模块主要有四个ASP页面。主页面是adminsubject.asp。对一个数据库进行数据的插入和读取之前,必须先打开与这个数据库的连接。程序首先利用ADO数据访问接口与数据库打交道,程序如下:
 sql="select * from examsubject"
 set rs=server.createobject("adodb.recordset")
 rs.open sql,conn,3,2
 主页面主要包括两个表单,一个是用来提交科目的增添操作,将输入的科目名称存入数据库表(examsubject表)中。用adminsubjectsave.asp页面处理表单信息,代码很简单,如下:
<!--#include file="conn.inc"-->
<%examsubject=trim(request("examsubject"))
sql="select * from examsubject "
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2  
 rs.addnew '增加新的科目
rs("examsubject")=examsubject
rs.update
response.redirect "adminsubject.asp"%>
 而另一个表单是为了操作方便和显示效果,需要在页面中显示已有的可用于考试的科目。只需打开考试科目信息表(examsubject表),采用循环算法生成即可。主要代码如下:
 i=0  'i为显示的序号,从0开始
   do while not rs.eof
 i=i+1
   rs.movenext
   loop
科目管理模块运行的主界面如下:

图5-7 科目管理模块图
    程序中各项修改和删除的指令在实施前都有相关提示,通过java script函数和事件可方便地实现。

5.2.2 题库管理模块(adminhouse.asp)
 题库管理模块在本系统设计中占有重要的地位,也是设计的难点。高质量的题库是高质量考试的保证。本题库主要是针对单选题、多选题和判断题三种考试题型来设计题目的。
 此模块主要与其它四个页面相联系,代表不同的操作,包括有 “浏览”按钮超链接,“添加题目”按钮超链接(adminhouseadd.asp),“删除所选项”按钮超链接(adminhousedel.asp),“编辑”图标超链接(adminhouseedit.asp),分别对应相应的操作页面。此外,对于显示的题目利用复选框可进行全选或取消全选操作。
 在进行各种操作之前也是有提示,同科目管理模块一样用java script来实现。题库的显示是通过一个表单来实现,按照科目和题型来分类显示,通过关键字可以查询相应的题目。表格循环即可生成显示的内容。对于题库没有的题目可根据科目和题型进行添加,对于题库已有的题目,同科目管理模块一样,要有相应的删除和修改的操作。由于每一道题目信息比较多,本页面只显示每一道题的题干,单击“查看/编辑”图标后可转向处理该题目的具体信息的页面,就可进行编辑题操作,保存题目后数据库也即时更新。
 用一个提供选项的表单,通过一个下拉框来选择考试的科目,其下拉选项需要通过打开科目信息表(examsubject表)生成的。表单代码如下:
 <form name="viewaddform" method="POST" action="adminhouse.asp">
     <tr>
       <td><select size="1" name="subjectview">
       <option selected>--选择科目--</option>
       <% sql="select * from examsubject"
       set rs=server.createobject("adodb.recordset")
       rs.open sql,conn,3,2
       do while not rs.eof %>
       <option value="<%=rs("examsubject")%>"><%=rs("examsubject")%></option>
       <% rs.movenext
       loop
       rs.close %></select><select size="1" name="typeadd">
       <option selected>--题型--</option>
       <option value="单选题">单选题</option>
       <option value="多选题">多选题</option>
       <option value="判断题">判断题</option>
       </select><input type="submit" value="浏览" name="I3" onclick="viewit(this.form)" class="s02">&nbsp;&nbsp;
    <input type="submit" value="添加题目" name="I6" onclick="addit(viewaddform)" class="s02">&nbsp;&nbsp;
    <input type="text" name="mykey" size="10" value="--关键字--" onfocus="this.select()" class="s01">&nbsp;&nbsp;
    <input type="submit" value="查询题目" name="I7" onClick="searchit(this.form)" class="s02"></td>
     </tr>
   </form>
 由于题库量大,要查找题目不容易,所以设计了按题目关键字来查询的功能。采用一个提供选项的表单实现,只需要在SQL语句中加入相应的判断语句,利用like来进行模糊查找。代码如下:
<%subjectview=request("subjectview")
typeadd=request("typeadd")
mykey=request("mykey")
if subjectview="--选择科目--" or subjectview="" then
 subjectview="%"
end if
if typeadd="--题型--" or typeadd="" then
typeadd="%"
end if
if mykey= "--关键字--" or mykey="" then
  mykey="%"
end if
PageCount=0
sql="select * from examhouse where subject like '"& subjectview &"' and type like '"& typeadd &"' and question like '%"& mykey &"%'"
set rs=conn.execute(sql)
while not rs.eof
 PageCount=PageCount+1
 rs.movenext
wend
sql="select * from examhouse where subject like '"& subjectview &"' and type like '"& typeadd &"' and question like '%" & mykey &"%'"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2
on error  resume next
 要注意的一点是,由于题库的容量庞大,所以必须进行分页显示。处理的方法是通过页面参数page记录所在页面,默认为第一页。首先统计总共的记录数目。根据每页要显示的记录数目算出总共的页数。对于每一页,循环显示记录时要判断是否在所显示的页内,否则不显示。还要显示第一页、最后一页、上一页、下一页等链接。这些处理都是在循环生成表格内容的时候进行的。如要显示某一页的内容可输入页数按回车键即可。
 题库管理模块运行的主界面如下:

图5-8 题库管理模块

5.2.3 试卷生成模块(adminpaper.asp)
     管理员生成试卷是本系统最重要的功能之一。本系统采用的方法是:管理员先向系统提交想要生成的试卷的各种信息,最后这个信息必须要通过领导审批才能作为一次正式的考试。本系统处理考试试卷的生成总共需要三步操作[2]。
 第一步,管理员需要向系统提交试卷的基本信息。利用一个表单内插入一个表格,表格内的内容包括试卷所属科目,考试时间,题型,各种题型的数目和分值等,如下图所示:
 
图5-9 试卷信息图

 这里需调用科目信息数据表(examsubject表)的信息,让管理员根据已有的科目生成试卷。以上试卷信息是默认的,可应各自所需进行修改,利用java script函数计算分数和给出提示信息,所以组卷时注意卷面总分和题型分布和分值的合理性和实际性,。
 第二步,确定参加考试的人员名单以及审核考试信息的领导姓名。如图5-10所示,可以选择参加考试的班级,通过复选框选择确定的人员,选择审核试卷的领导,对选择的人员通过打开数据表(examuser表)可显示其基本信息。需注意的是要将图5-9的的试卷信息传给下一步,需用隐藏的ASP控件保存信息,如下代码所示:
<input type="hidden"  name="ss" value="<%=request("subject")%>">
<input type="hidden"  name="tt" value="<%=request("totalper")%>">
<input type="hidden"  name="sing" value="<%=request("singlecount")%>">
<input type="hidden"  name="mul" value="<%=request("multicount")%>">
<input type="hidden"  name="jud" value="<%=request("judgecount")%>">
<input type="hidden"  name="sp" value="<%=request("singleper")%>">
<input type="hidden"  name="mp" value="<%=request("multiper")%>">
<input type="hidden"  name="jp" value="<%=request("judgeper")%>">
<input type="hidden"  name="tst" value="<%=request("testtime")%>">
操作图如下:

图5-10 确定参加考试人员表单

 第三步,管理员确认所有信息无误后将所有考试信息存入数据表(exampaper表),用adminpaperconfirm.asp页面进行提交处理。需要注意的是,生成的数据要通过领导审核才可用于考试。试卷生成成功后系统即给出提示。
 
5.2.4 考试信息模块(adminsentnotice.asp)
     管理员发布的考试信息将使用户登录系统后即可浏览,让登录人员第一时间了解有关的考试信息。发布考试信息需要填写信息的标题、正文等内容,这些信息都写入数据表中,以备显示新闻的时候用到。发布成功后还可以即时浏览所发的新闻内容。管理员发布新闻的主界面如下:

图5-11 考试新闻发布主界面

5.2.5考生信息管理模块(adminuser.asp)
   为了便于管理员对考生信息的管理,系统提供了考生信息管理模块。在此,可进行增加、删除和修改考生信息的操作,通过相应的按钮即可转向各自的处理页面。这些操作直接与用户信息数据表(examuser表)相联系,管理员不必进入后台数据库即可进行考生信息的管理,操作更人性化。
    管理员输入考生信息后,单击“添加该考生”按钮即利用文件adminusersave.asp将考生信息写入数据表,显示成功添加信息,并在下面的表格中显示。删除和修改操作类似。
 考生信息管理模块运行界面如下:

图5-12 考生信息管理界面

5.3 实现领导审批界面(newspass.asp)
     领导的主要任务是对管理员生成的试卷进行审核,提交审核意见。通过验证examuser表的字段rank是否为leader,如果是,则拥有本系统的领导权限。进入首页后,如果有待审核的考试计划,则在考试新闻的下方将有系统提示的审批请求,单击可进入审批页面。如果通过则考试正式执行,如果未通过,则考试信息不发布。运行界面如下:

图5-13 领导审核界面图
 领导提交了审批意见后,系统将储存到考试信息表(exampaper表),写入passuserid和passtime的领导信息,并在页面上显示出成功审批的提示。

5.4 实现普通考生考试界面(subject.asp)
     这是本系统的最重要的一部分,是整个考试系统的前台部分,是考生进行考试的基础。详细设计如下。

5.4.1 选择科目和考试界面设计
     考生进入该系统的最主要的是进行考试,一个考生有可能同时需要参加多项考试,但只能选择某一个科目进入考场。页面的实现很简单,只是一个考试的列表。打开考生数据表,调出该考生需要参加的所有考试。
<%sql1="select * from testuser where havetest=0 and userid="& request.cookies("userid")
set rs1=server.createobject("adodb.recordset")
rs1.open sql1,conn,3,2
如果没有考试可参加,显示没有考试可以参加的提示信息:
if rs1.eof then %>
<table border="0" cellspacing="0" bordercolor="#111111" width="480">
  <tr>
    <td width="100%" height="30">&nbsp;您现在还没有需要参加考试的科目! </td>
  </tr>
</table>
<% else
i=1%>
 运行界面如下:
 
 图5-14 选择考试界面
 
 生成可以参加的考试列表。选择好考试科目后,考生进入考场考试。这时系统需要完成的几个重要的功能是:首先生成考试时试卷中的题目,即试卷的内容。确定考试后,则开始计时。整个页面其实就是一个大的表单,内嵌一个计时页面。表单只需要在页面上做好一个,然后通过循环算法生成即可。计时系统是使用java script来实现的,显示在试卷的右上方,并有倒记时功能,以分钟为单位。这里主要是调用系统的now()函数来显示系统时间的。
 从题库中随机选题。这里采用的算法是:首先打开题库,然后读取题库中的符合要求的题目数量存为count,然后生成一个1到count的随机数temp。这是第temp道题,如果没有被选中则它就被选了。每一个题目是否被当前考卷选中是用存在数据库中的mark字段来标记的。下面是单选题的代码:
 <%randomize
 for i=1 to singlecount
 sql="select * from examhouse where mark=0 and subject='"& subject &"' and type='单选题'"
 set rs=server.createobject("adodb.recordset")
 rs.open sql,conn,3,2
 count=rs.recordcount
 temp=fix(count*rnd)
 if not rs.eof then
  rs.move temp
 rs("mark")=1%>
 选择好一道题目后开始在页面上显示这道题目。多选题和判断题的算法也一样。在考试结束、考生交卷后,系统会马上评分,生成成绩。这个用循环算法来实现。具体办法就是打开题库数据表(examhouse表),对比每一道题目的答案,累加求和即可。计算好成绩后还要存入系统的考试成绩信息表,以供以后查找和分析。
 这里要注意的一点是考试成绩的评定算法。利用Subjectresult.asp页面进行计算。首先score=0,j=0。 逐条题目地计算分数,将每个答案选项赋值给result,根据题目id从数据库中取出该道题,再判断题型,如果是单选题或判断题,正确则加分,错误则不加分。如果是多选题,因规定每道题至少有两个正确答案,判断到第一个正确答案,则加1分(1/4),判断到第二个正确答案则再加1分,如果此时多选其它项,因为多选则不得分,所以要将之前加的分减去,否则将剩下的分加上,即完整的一道题的分。J是用来记录答案的个数。代码如下:
 score=0
 j=0
 for each element in request.form
   for i=1 to request.form(element).count
     if instr(element,"NO")<>0 then
       id=mid(element,3,3)
       result=request.form(element)(i)
       sql="select * from examhouse where id="& clng(id)
       set rs=server.createobject("adodb.recordset")
       rs.open sql,conn,3,2
       if rs("type")="单选题" then
         if result=rs("answer") then
           score=score+cint(singleper)
         end if
       end if     
       if rs("type")="多选题" then
         if instr(rs("answer"),result)<>0 then
           score=score+cint(multiper)/4
           j=j+1
           answer=split(rs("answer"),",")
           answercount=ubound(answer)+1
           if answercount=j then
             score=score+cint(multiper)*(1-j/4)
           end if
         else
           score=score-cint(multiper)/4*(j)
         end if  
       end if
       if rs("type")="判断题" then
         if rs("answer")=result then
           score=score+cint(judgeper)
         end if
       end if     
     end if
   next
 next

5.4.2 查询成绩界面
 考试结束后,本系统还要提供对考生本次考试成绩和以往的考试成绩的多功能查询功能(即查询成绩界面),分科目显示考生以往的考试成绩,界面显示如下:
 
 图5-15 成绩查询界面

5.5 考试新闻模块(news.asp)
     此模块是一个公共模块,与每个登录系统的用户都有关,所以把它作为一个独立的模块进行分析。根据不同的用户权限显示不同的功能,所以,本模块分为针对所有用户显示最新的新闻、针对领导显示考试计划审核和针对管理员显示考试计划作废这三个部分,用不同的代码实现。模块运行图如图5-3所示。
 考试新闻显示设置有效期为3天,用(date()-rs1("senttime"))<3作判断条件,过期则不在此显示,但可点击“浏览全部新闻”超链接到newsall.asp页面,观看全部的新闻及内容。为了显示效果美观和动态,将新闻显示用标签<marquee></marquee>实现滚动效果。并可单击某一条具体的新闻浏览其内容,还可通过“查看没有浏览新闻的人员”超链接到displaynotview.asp页面,让大家互相通知,达到互相监督浏览新闻的目的。显示如下图:
 
 
 图5-16 查看新闻内容
 
程序代码如下:
<% sql1="select * from sentnotice"
set rs1=server.createobject("adodb.recordset")
rs1.open sql1,conn,3,2   '打开新闻内容表%>
  <tr>   
    <td width="89%" height="130">  <marquee style='BOTTOM: 0px; FONT-WEIGHT: 10px; HEIGHT:120px;  TEXT-ALIGN: left; TOP: 0px' id='news' scrollamount='1' scrolldelay='10' behavior='loop' direction='up' border='0' onmouseover='this.stop()' onmouseout='this.start()'> 
<%do while not rs1.eof  
  if (date()-rs1("senttime"))<3 then%>  
<img border="0" src="images/hua.gif">
<a href="newsview.asp?noticeid=<%=rs1("noticeid")%>"><%=rs1("title")
%></a> [<%=formatdatetime(rs1("senttime"),1)%>]<img border="0" src="images/new.gif">
<br>
<% end if     '显示新闻标题 
rs1.movenext
loop
rs1.close%> 
</marquee>
   </td>
 </tr> <%sql="select * from waitforpass where ifpass=1 and objname='考试计划'"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2%> 
</table>
<%if request.cookies("userid")<>"" then
        '如果是已经登录的领导,判断是否有需要审批的信息
rs.close
sql="select * from waitforpass where ifpass=0 and passuserid="& request.cookies("userid")
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2
if not rs.eof then
%>
<table cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2" height="25">
   <tr>
    <td width="100%" style="border-left-style: solid; border-left-width: 0; border-right-style: solid; border-right-width: 0; border-top-style: solid; border-top-width: 0; border-bottom: 1px solid #000000">
    <img border="0" src="images/tishi.gif"></td>
  </tr>
<%do while not rs.eof%>
  <tr>
    <td width="100%" height="30"><img border="0" src="images/img_eye.gif"> 有一项<font color="#ff0000"><%=rs("objname")%></font>需要您审批。<a href="newspass.asp?id=<%=rs("id")%>&objid=<%=rs("objid")%>">现在审批</a></td>
  </tr>
<%rs.movenext
loop%>
</table>
<%end if
end if
if request.cookies("ifadmin")="True" then
     '如果是已经登录的管理员,判断是否有管理员信息
rs.close
sql="select * from waitforpass where ifpass=0"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2
if not rs.eof then%>
<table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2">
  <tr>
    <td width="100%" style="border-left-style: solid; border-left-width: 0; border-right-style: solid; border-right-width: 0; border-top-style: solid; border-top-width: 0; border-bottom: 1px solid #000000">
    <img border="0" src="images/tishi.gif"></td>
  </tr>
<%do while not rs.eof%>
  <tr>
    <td width="100%" height="30"><img border="0" src="images/img_eye.gif"> 有一项<font color="#ff0000"><%=rs("objname")%></font>[编号:<%=rs("objid")%>]没有通过审批。<a href="newsgiveup.asp?id=<%=rs("id")%>&objname=<%=rs("objname")%>&objid=<%=rs("objid")%>">作废</a></td>
  </tr>
<%rs.movenext
loop%>
</table>
<%end if
end if%>

6 心得体会
   一个多月的努力,终于要接近尾声了。回想这段时间,生活就只有两个点,宿舍-饭堂。生活很枯燥,但充满了挑战,是值得回味的大学生活片断。
 在设计过程中,我翻阅了不少书籍,遇到了许多困难。特别是因为对系统设计的不熟悉,开始时不知从何做起,除了要学习ASP、SQL这些基本的知识,还要学习Dreamweaver、IIS等知识,将这些知识融会贯通是很难且很重要的。
 有时程序中一个小小的标点符号错误,或者数据库的某个字段名写错,因此而出现的连带问题,有时真令人很头痛。但最后解决了困难而领悟到“功夫不负有心人”的真理,更使我有信心去解决接下来的每一个困难。印象最深的就是,在做科目管理管理模块时,在处理删除、添加、保存这几个按钮的功能时,由于表里的记录是实时更新的,通过上面几个操作后,显示时出现科目记录乱跑的现象,无法统一。想了很多的解决办法,如利用rs.movelast控制记录集指向表的最后一条记录,利用SQL的order by语句排序等方法,但都是此行彼不行。为这个问题花了两三天的时间,上网查了很多资料,最后才知道是因为表里的字段id不是主键,导致了出现新增记录乱跑的现象。
 通过本次设计,本人对系统的设计开发有了一个全面的深入的认识,从选择解决方案构思到具体实现都进行了较深入的研究。掌握了ASP的许多应用新技术以及SQL Server数据库的开发方法。本次设计也使我对软件开发的方法有了一个实践性的了解,从需求分析、系统规划、系统分析、系统设计到系统实施,从中我也学到了很多关于网站管理方面的知识,提高了实践操作的能力。
 但也由于种种原因,系统设计还存在不少问题,如考试题型较少,考试后成绩的统计和分析等问题,这些都有待进一步改善,不断地将这个系统做大做强,以令其能应付每一种形式的网上考试。
 
 
7 展望
 21世纪是信息化的社会,数据信息应用已进入大规模服务阶段。考试作为最直接体现信息化社会中人们的知识水平的一种方式,是目前使用最为广泛的形式之一[6]。随着科学技术的不断提高,计算机科学技术日渐成熟,网上考试系统已进入人类社会的各个领域并发挥着越来越重要的作用,作为计算机和网络技术应用的一部分,网上考试系统具有传统考试无法比拟的优点。这些能极大的提高教学管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。随着信息技术的不断更新,对系统提出了更高的要求,要求信息管理系统具有更好的扩展性、安全性和更人性化的设计和操作。所以本系统的功能还要随之更新,提升系统的实用性。
 
8 致谢
 本次毕业设计中,我得到了同学和朋友的帮助,尤其是我的指导老师洪伟铭老师在我的程序设计和论文的编写过程中多次给予指导,给予我很大的帮助和设计空间,感谢他耐心的辅导。同时也向对本系统的提出宝贵意见的老师和同学致以最衷心的感谢!
 
 
参考文献:
[1]张德静. 深入浅出ASP程序设计与开发. 中国青年电子出版社.2005.
[2] 吴明辉 胡煜  窦亮. ASP网络办工及商务应用系统开发实例导航.人民邮电出版社,2003.
[3]石志国 王志良 薛为民.ASP精解案例教程.清华大学出版社 北方交通大学出版社,2003.
[4]王劲松. Dreamweaver MX 2004完美网页设计-ASP交互网页设计篇. 中国青年电子出版社,2005.
[5] 董玉德 等编著. ASP网络编程技术-系统设计与实现. 中国科学技术大学出版社,2003.
[6] 龙马工作室. ASP+SQL Server组建动态网站实例精讲-政府和教育网站篇. 人民邮电出版社,2005.
[7] 刘韬 楼兴华. SQL SERVER2000数据库系统开发实例导航. 人民邮电出版社,2004.
[8] 杨格.Dreamweaver MX2004设计与制作教程.机械工业出版社,2005.
[9] 孙素华. Dreamweaver MX 2004完美网页设计-实战技巧篇. 中国青年出版社,2005.
[10]飞思科技产品研发中心.ASP&SQL SERVER网站设计与实现.电子工业出版社,2001.


以上为本篇毕业论文范文asp考试系统+文档的介绍部分。
本论文在计算机论文栏目,由论文网(www.zjwd.net)整理,更多论文,请点论文范文查找

毕业论文降重 相关论文

收费专业论文范文
收费专业论文
汉语言文学论文
物理学论文
自动化专业论文
测控技术专业论文
历史学专业论文
机械模具专业论文
金融专业论文
电子通信专业论文
材料科学专业论文
英语专业论文
会计专业论文
行政管理专业论文
财务管理专业论文
电子商务国贸专业
法律专业论文
教育技术学专业论文
物流专业论文
人力资源专业论文
生物工程专业论文
市场营销专业论文
土木工程专业论文
化学工程专业论文
文化产业管理论文
工商管理专业论文
护理专业论文
数学教育专业论文
数学与应用数学专业
心理学专业论文
信息管理专业论文
工程管理专业论文
工业工程专业论文
制药工程专业论文
电子机电信息论文
现代教育技术专业
新闻专业论文
艺术设计专业论文
采矿专业论文
环境工程专业论文
西班牙语专业论文
热能与动力设计论文
工程力学专业论文
酒店管理专业论文
安全管理专业论文
交通工程专业论文
体育教育专业论文
教育管理专业论文
日语专业论文
德语专业论文
理工科专业论文
轻化工程专业论文
社会工作专业论文
乡镇企业管理
给水排水专业
服装设计专业论文
电视制片管理专业
旅游管理专业论文
物业管理专业论文
信息管理专业论文
包装工程专业论文
印刷工程专业论文
动画专业论文
环境艺术专业论文
信息计算科学专业
物流专业论文范文
人力资源论文范文
营销专业论文范文
工商管理论文范文
汉语言文学论文范文
法律专业论文范文
教育管理论文范文
小学教育论文范文
学前教育论文范文
财务会计论文范文

电子商务论文范文

上一篇:ASP旅游网站建设(文档 设计) 下一篇:ASP+SQL机房设备管理系统答辩,开..

最新论文

精品推荐

毕业论文排版

热门论文


本站简介 | 联系方式 | 论文改重 | 免费获取 | 论文交换

本站部分论文来自网络,如发现侵犯了您的权益,请联系指出,本站及时确认删除 E-mail:229120615@qq.com

毕业论文范文-论文范文-论文同学网(www.zjwd.net)提供计算机论文毕业论文,毕业论文范文,毕业设计,论文范文,毕业设计格式范文,论文格式范文

Copyright@ 2010-2024 zjwd.net 毕业论文范文-论文范文-论文同学网 版权所有