大家好,今天给大家介绍基于asp+access的网上远程教育网设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。
文章目录:
项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:18844个字81页
包含内容:整套源码+完整毕业论文
资源文件目录简图如下:

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。
第一章 概述
1.1 动态交互式网页系统
1.1.1 动态交互式网页的概念
随着网络技术的不断发展,Web开发已经从传统的静态网页系统过渡到动态网页系统。所谓动态网页就是能够与数据库相连,可以在服务器执行,可以处理浏览器提交的请求。所以具有静态网页所无法比拟的优点。迅速成为Web开发的主流。一个基本的Web开发通常由动态网页制作系统、WEB服务器系统和数据库系统3个部分构成。网页制作系统用于制作动态网页格式的文件;而Web服务器用于执行这些动态网页,向浏览器发布相应的文件;数据库系统则是供存储数据而用的。其中数据库和Web服务器之间还需要一定的数据库连接组件,以建立连接。
1.1.2.动态网页系统的开发步骤
1)系统任务的提出。
系统开发的工作是从接受任务开始的,而系统任务应由系统用户提出,以书面的形式给予表达。
2)初步系统调查。
初步系统调查着重了解存在的主要问题和用户提出的目的要求,并制定新系统总体规划。
3)确定系统目标。
经过初步系统调查,了解了用户的基本状况和用户对系统的设想及要求后,系统开发人员就可以初步提出网页系统的系统目标。
4)系统的可行性研究。
系统的可行性研究包括可能性和必要性。有技术上的,经济上的,人力资源上的,以及组织管理上的。经过系统的可行性研究,最后应写出一份系统可行性分析报告。分析报告是系统开发人员第一阶段工作的小结。
5)详细的系统调查。
通过详细的系统调查。可以得到人工管理业务的处理办法,并详细地掌握住处的流程,总结出现有业务过程的规律,存在的问题。从而提出改进措施。
6)现行系统的描述与分析。
着重用来分析现行系统页面设计后,相关性版块信息交互的方便性。特别是要分析现行网页系统存在主要问题和管理上的薄弱环节,以及产生这些问题的原因和解决办法。
7)用户需求及功能分析。
用户需求因不同用户而有所区别,但主要可分为系统范围,信息的处理和技术性三个方面。
8) 新系统的逻辑模型。
通过对现行系统的进行详细调查,分析及用户需求分析后,就可以确定新系统的逻辑模型。新系统的模型包括新系统的功能要求、目标、各级页面之间链接、数据字典。
9) 编码对象的分析及编码体系结构的确定。
在系统分析阶段,对现行系统及动态网页系统将要采用的编码对象及方法应该认真分析,以确定先进的科学的高效的系统编码体系。
10) 系统的软件,硬件配置建议。
分析人员应对网页系统所需的计算机系统的配置提出建议。
11) 系统的物理编程。
根据不同的系统要求以及用户软、硬件技术状况,在合适的平台上,选取相宜的网页语言和工具进行实际编程。
12) 软件调查。
对设计的原代码进行调试,以修改其中错误,从而确定系统的可靠性。
13) 功能测试。
对照系统分析中提出的系统功能要求,应进行系统的功能测试,以确定系统可预期的功能。
14) 系统的性能评价以及完善文档。
系统的性能评价应包括最基础的软硬件,支持系统占用空间等。系统交付时,应同时交付完善的文档。
1.2 ASP网络技术
MICROSOFT IIS的主要功能是支持HTML网页,服务器只是从硬盘中根据用户的请求取出相应的静态网页发送到用户浏览器上。IIS的主要作用就是为用户浏览器和服务器上储存的文件的一个纽带。从这个意义上讲,它和其它的WEB服务器没有什么区别,所有的WEB服务器都可以实现这个功能。但是ASP的出现改革了这一切,在MICROSOFT IIS仍然支持静态HTML网页的前提下,利用ASP可以根据开发人员的要求在WEB服务器上建立起动态网页文件。这样,用户通过提交表单等一些操作可以向WEB服务器发送特定的浏览请求。WEB服务器将会根据用户请求,执行相应的动态网页。然后生成一个结果网页,再发送到浏览器端,供用户浏览,这样便实现了网页的简单调用了,用户可能通过自己的操作,改变浏览器显示的网页的内容。
那么什么是ASP网页呢?将从以下三个方面逐一介绍。
1.2.1 ASP包含脚本
ASP网页是指任何具有扩展名.ASP的文件,它位于WEB服务器上。这个特点的扩展名用来区分ASP网页和普通的HTML文件。而ASP网页其实也并没有什么神秘的,它实际上就是嵌入了ASP脚本的HTML页面,脚本语言常用的是VBSCRIPT和JAVASCRIPT等。VBSCRIPT和JAVA不同的是ASP网页在执行之前不必编译成一个独立的文件。ASP网页改变以后,如对它进行再次请求,那么它会自动进行重新编译。便于脚本语言组建WEB网页的优势在于即使WEB站点已经发布,对其进行修改也是很容易的。如果发现自己的WEB站点上有一个小错误,那么可以立即将要修改的网页调入记事本修改。ASP网页使用了脚本语言,执行起来与WEB服务器一样,是多线程的。这就允许ASP网页高效地支持大量同时访问的用户。
1.2.2 ASP包含的对象和组件
ASP网页如果只有脚本的话,只能显示输出一些有趣信息,无法获取用户的信息,将数据保存到数据库或者在服务器上创建文件,而ASP包含的组件恰好解决了这个问题。
ASP包括两类组件:内置对象和可安装组件
下面简单地描述ASP6个内置对象
·Application object—这个对象表示的信息,可以与ASP应用程序的所有用户进行共享
·Object Contex Ntex Object—这个对象与事务性ASP配合使用
·Repuest Object—这个对象表示由浏览器发向服务器的所有信息,包括表单变量和查询字符串
·Response Object—这个对象表示由服务器发向浏览器的所有信息,包括由ASP网页发送的HTML内容
·Server Object—这个对象用于启用服务器上不同的工具函数
·Session Object—这个对象表示有关特定用户会话的信息
除了内置对象以外,好几个可安装的组件与ASP进行了绑定,下面列出一些较为常用的组件:
·Adrotator Compontent—这个组件用于在WEB站点的WEB网页上显示横幅广告及显示频率
·Brower Capadility Componet—这个组件可以根据地不同浏览器的功能显示不同的HTML内容
·Content Linking Compnent—这个组件可以用于将好几个HTML网页链接到一起,这样它们便可以实现轻松的导航
·File Access Compnent—这个组件允许使用自己计算机的文件系统工作,使用这个组件可以读写文本文件
用户并不是仅限于使用ASP所绑定的组件,第三方服务商已经创建了成百上千个组件,这些组件用户都可以包含到自己的脚本中,可以使用这些组件接受文件上传,在服务之间传输文件和收发电子邮件,用户还可以使用VB、C++或Java等语言创建自己的组件。
1.2.3 Asp和数据库访问
在Asp包含的对象中有一个特定的集合值,这就是Active Data Objects,它可以帮助我们从Asp网页访问数据库,可以用它插入、更新、删除数据库中表的行,还可以使用这些对象获取数据库查询的记录集,并将这些记录显示到Asp网页上。
第二章 网站需求分析
需求分析是软件生命周期的一个重要阶段,它根本的任务是确定为了满足用户的需要必须做什么。具体地说,应该确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景,必须仔细分析系统中的数据,既要分析系统中的数据流。又要分析长期使用的数据存储,通过分析应该得出用数据流图、E-R图,为系统的设计奠定基础。
在这一章里,我将给出系统的数据流图,功能结构图,系统分析说明书,E-R图,为系统的设计奠定基础。
2.1数据流图
数据流图描绘系统的逻辑模型图,其中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。因为数据流图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的通信工具。此外,设计数据流图只需考虑系统必须完成的基本逻辑功能,完全不需要考虑如何具体地实现这些功能,所以它也是软件设计的很好的出发点。《远程教育网》主要是为了让远程学员通过网络向老师提出疑难问题,通过网络实现在线考试,成绩查询,教师通过网络实现远程向学生答疑解惑,添加试题库,管理学生学籍等。所以主要的数据源应是学生,教师的相关各种信息。它们在系统中流动和处理详细见下面的数据流程图。
从数据流图上容易看出该网站应具有对包括用户资料信息,各种图书信息注册到相应的数据库表中,不同级别的用户可以登录修改相应的数据库表中相关信息资料,可以对数据库的信息按某些字段或字段组合进行检索。数据流图见图2-1。
1:学生信息流程图:
流程图分析:
从数据流图上容易看出该系统可以实现输入学生帐号,首先检查输入的帐号在学员表中是否已经注册,对没有注册的帐号可以实现添加记录,对已经存在的帐号,可以对学生表记录实现修改,删除,查询等操作。这里可以得知:要实现学生信息的流动,需要设置学生数据库表。

2:学生考试信息流程图:

流程图分析:
从数据流图上容易看出该系统应具有对已经注册的学员可以实现在线考试和成绩查询。数据的流程具体是:首先输入学员帐号,在学员表中检查该帐号是否注册,对已经注册的帐号可以实现从题库表中抽起考试试题,实现在线考试。对考试的结果记录到成绩库中,以备学员查询自己的成绩。同时对已经注册的帐号可以从成绩库中查询考试成绩。这里要实现学员考试信息的相关流动,需要设置题库表和成绩库表。
3:教师基本信息流程图:
流程图分析:
从数据流图上容易看出该系统可以实现输入教师帐号,首先检查输入的帐号在教师表中是否已经注册,对没有注册的帐号可以实现添加记录,对已经存在的帐号,可以对教师表记录实现修改,删除,查询等操作。这里可以得知:要实现教师信息的流动,需要设置教师数据库表。

4:试题信息流程图:

2.2 系统功能结构图
通过前面的数据流程图已经对系统的主要功能有了一个初步的了解,下面将系统的功能再作一些深入分析,最后得出系统的功能结构图
《远程教育网》是为了实现学员通过Internet达到远程学习,考试,成绩查询。教师通过Internet达到远程对学生答疑,发布考试试题,管理学生资料的目的。因此远程教育系统包括学生注册模块,学生留言模块,学生考试模块,学生成绩查询模块,教师注册模块,教师答疑模块,教师发布考试试题模块,教师管理学生资料模块。在此基础上,总结得到如下的系统功能结构图:

2.3 E-R图
软件系统本质上是信息处理系统,因此在软件系统的整个开发过程中都必须考虑两个方面的问题—数据与及数据的处理。在需求分析阶段既要分析用户的数据要求,又要分析用户的处理要求。为了把用户的数据要求清晰地表达出来,通常建立一个概念性的数据模型(也称为信息模型)。它是一种面向问题的数据模型,是按照用户的观点来对数据和信息建模,它描述了从用户角度看到的数据,它反映了用户的现实环境,且与在软件系统中的实现方法无关。
最常用的表示概念性数据模型的方法是实体一联系方法,这种方法用E-R图描绘现实世界中的实体,而不涉及这些实体在系统中的实现方法,针对《远程教育网》面向的用户与及为了实现他们在网站上想达到的目的,下面给出分析得出的该系统的主要实体的E-R图。
通过该ER图就比较容易设计出该系统的应具有的数据库和相应字段,为后面的设计奠定了坚定的基础。

图4-3 E-R图
第三章 网站设计
系统设计是信息系统开发工作的核心,其基本的任务是把原系统分析阶段得出的逻辑模型变换成系统的物理模型。即按照系统需求分析阶段确定的目标和逻辑模型,具体设计出效率高,适应性强,可靠性好且经济实用的系统实施方案。
经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎样做”的时候了。设计的基本目的就是回答“系统应该如何实现?”这个问题,通过这个阶段的工作将划分出组成系统的物理元素—程序文件,数据库,人工过程和文档等等。
系统设计应从数据流程图出发。设想完成系统功能的若干种合理的物理方案。并和用户共同比较选定一个最佳方案。然后进行软件结构设计。在进行软件设计时应该遵循模块独立原理,确定软件由哪些模块组成以及这些模块之间的动态调用关系。同时可以设计出系统的层次和结构图。基于以上理论,结合需求分析阶段的数据流图和ER图。设计出以下的模块和7个数据库表结构的设计。
3.1模块处理功能设计
在上一章的系统的功能模块结构图中可以得知系统的功能模块,这里将设计这些功能模块完成的功能。
1.学生模块
1)学生注册模块
该模块包括学生注册子模块和学生登录子模块。学生注册子模块可以实现学员注册。学员进入远程教育网,首先需要注册成会员才可以进入学员模块。否则无法享受学生会员才可以使用的一些功能。比如在线考试,遇到疑难问题给老师留言等。注册时学生输入帐号和密码。对于学生表中还没有使用的帐号注册成功,对于使用过的帐号则注册失败。需要重新输入新的帐号。这里注册实际上就是向学生会员表添加新记录。新记录暂时记录学生的帐号和密码这二个字段,其它字段在学生登录进入学员模块后完善学员资料的其它字段。用户登录模块:该模块主要完成教师已注册的教师用户通过填写正确的用户名和密码,这样才能进入用户相应的信息模块。非法用户登录给出警告,密码填写错误应给出提醒。
2)学生留言模块
该模块包括:学生留言和查看留言二个子模块。学生留言模块是为学生在远程学习过程中遇到疑难问题时可以给该科目的任课教师留言,以便教师通过回复留言帮助学生搞清疑难问题。查看留言模块是查看教师给该学生的留言和回复的留言。
3)学生考试模块
学生通过该模块可以在线考试,系统自动打分,成绩自动记录到成绩表中。学生进入该系统后,当教师在发布了考试试题后,学生进入系统,系统随机地从试题库中抽起试题,学生填写学籍号后,开始答题,答题结束后交卷。系统自动将学生提交的答案和试题库中相应试题的答案对比评分,最后将评分结果记录到学生成绩库中。
4)学生成绩查询模块
学生每次在线考试的结果都记录到学生的成绩库中,学生可以随时输入学生学籍号,考试时间进行查询学生成绩。如果只输入学籍号,则查询的是该学生的所有的考试成绩,如果输入学籍号和考试时间,则查询的是满足这二个条件的记录。
2.教师模块
1)教师注册模块
该模块包括教师的注册子模块和教师登录子模块。教师注册模块可以实现教师注册。教师进入远程教育网为学生答疑解惑,首先需要注册成会员才可以进入教师模块。否则无法使用教师模块的一些功能。比如添加试题库,对学生的疑难问题老师留言为学生解答等。注册时教师输入帐号和密码。对于教师表中还没有使用的帐号注册成功,对于使用过的帐号则注册失败。需要重新输入新的帐号。这里注册实际上就是向教师会员表添加新记录。新记录暂时记录教师的帐号和密码这二个字段,其它字段在教师登录进入教师模块后完善学员资料的其它字段。用户登录模块:该模块主要完成教师已注册的教师用户通过填写正确的用户名和密码,这样才能进入用户相应的信息模块。非法用户登录给出警告,密码填写错误应给出提醒。
2)教师留言模块
该模块主要完成学生在远程学习的过程中遇到的一些疑难问题给这门学科的老师留言请教。老师通过查看留言子模块可以看到学生给他们的留言,通过查看,可以知道哪位学生,什么地方没有搞清楚,教师可以通过回复该留言来解答学生的疑问。同时教师也可以直接给在线学员留言。
3)添加试题库模块
教师可以通过登录该系统,发布考试试题。和作业等。该模块实际上就是向试题库中添加记录。添加的字段内容包括试题编号,试题内容,试题答案等。
4)资料的管理模块
该模块包括:教师管理学生的学籍号子模块,教师管理自身的资料的子模块。学生注册后已经学生管理自身的资料布包括学生的学籍号的管理。而只有特殊身份的教师才可以进入管理学生的学籍号。学生只有具备了学籍号才能进行在线考试等。
该模块实现教师登录密码的修改。密码可以是任意的数字和字母的组合。用户通过输入姓名,原密码,新密码来往成对自己的登录口令的修改。
3.2 数据库表逻辑结构设计
根据分析阶段得出的实体一联系图(E-R图),结合本网站系统对有关数据的存储的需要,更加方便实现该动态网页系统的所有功能,现将本网站设计成11个数据库表,下面逐一说明:




以上是本系统的库表结构的逻辑结构设计。
3.3数据库的结构的实现
在需求分析,概念结构设计(E-R图)的基础上得到数据库的逻辑结构之后,就可以ACCESS下实现该逻辑结构。
实现的过程实质就是将逻辑结构中的数据库表在ACCESS中实现对应的数据库表。
实现的步骤:打开ACCESS,新建一个空数据库,并且命名为ycjy。
接着新建数据库表。依次新建7个数据库表。分别对每个数据库表添加字段和字段属性。设计的7个数据库的界面见附录。
至此数据库的设计就完成了,下面就可以设计系统网页了。
第四章 应用系统实现
按结构化的程序设计思想,在完成了系统分析、系统设计后,就可以进行系统实现阶段了,系统实现是每指把系统的物理模型转换成实际运行系统的全过程。其基本任务是:
a) 前期准备
b) 系统平台的安装与调试
c) 程序的编制与调试
d) 信息系统调试
e) 数据库与文件的建立
f) 系统转换
g) 试运行、验收与维护
4.1建立Asp的运行环境
省略
4.2各功能模块对应的Asp文件的介绍
4.2.1学生模块
1):学生注册登录子模块文件:学生注册文件:register1.asp,学生登录文件:default.htm,检验用户名和密码文件:checkuser.asp。学生首页:smain.asp。
2) 学生留言模块:
查看学生留言箱文件:cksly.asp。查看留言内容文件:seesly.asp。
留言文件:sliuyuan.asp。
3:学生考试模块:
考试模块文件:wyks.asp。
4)成绩查询模块:
成绩查询登录文件:cjcx.asp。成绩搜索文件:searchcj.asp。
5)其它文件:
管理个人资料文件:grzl.asp。退出登录文件:exit.asp。
4.2.2教师模块
4.3典型ASP文件网页的实现
在分析各个网页实现之前,先介绍一下本系统为了追踪用户使用了cookie变量,如果你的电脑浏览器cookie文件损坏,将不能正常登录进入系统。
4.3.1注册页面register1.asp的实现

实现的关键语句:
此时的记录集是否为空,如果为空,则表明该用户名未使用过,可以在记录集中添加记录,更新字段值。否则提示用户名已经重复。注册成功后返回首页登录。关闭数据库。教师实现注册的过程类似。
<% dim name,password,selectval
name=request("name")
password=request("password")
selectval=request("select")
if name="" then Response.End
Set rs = Server.CreateObject("ADODB.Recordset")
if selectval="学生" then
sql="select * from student where sname='"&name&"'"
rs.open sql,conn,3,3
if rs.eof then
rs.addnew
rs("sname")=name
rs("spassword")=password
rs.update
else
response.write""
end if
else
sql="select * from teacher where tname='"&name&"'"
rs.open sql,conn,3,3
if rs.eof then
rs.addnew
rs("tname")=name
rs("tpassword")=password
rs.update
else
response.write""
end if
end if
response.write""
rs.close
conn.close
set conn=nothing
%>
4.3.2:学生首页smain.asp文件的实现
学生通过首页输入正确的用户名和密码登录。登录时通过checkuser.asp检验用户是否合法。检验的实现过程是:建立记录集后,通过SQL语句查询学生表中是否有满足学生帐号和密码的记录。如果记录集为空,则表明帐号或者密码出错。非空则可以进入学生首页smain.asp。

学生首页左边是学生相关的一些功能页面的文件链接,分别有:修改密码,查看留言,管理资料,在线考试,成绩查询,退出登录。中间是本远程教育课程设置和任课教师情况。显示课程和任课教师是通过在课程表和教师表联合查询得到的记录集作为数据源。下面是建立记录集和SQL查询语句:
<%Set rs = Server.CreateObject("ADODB.Recordset")
sql="select kc.kch,kc.kcm,kc.xf,kc.kclx,teacher.trealname,teacher.tname from kc,teacher where kc.teacher=teacher.jsbh order by kc.id desc"
rs.open sql,conn,3,3%>
得到查询记录集后利用循环语句实现显示:
循环语句:
<% do while not rs.eof %>
<tr>
<td valign="middle" height="31"> <%=rs("kch")%></td>
<td valign="middle"> <%=rs("kcm")%> </td>
<td valign="middle"> <%=rs("xf")%></td>
<td valign="middle"> <%=rs("kclx")%></td>
<td valign="middle"> <a href="javascript:openwin('seeteacher.asp?tname=<%=rs("tname")%>','top=10,left=300,width=390,height=380')"><%=rs("trealname")%></a>
</td>
<td valign="middle"> <a href="sliuyuan.asp?tname=<%=rs("tname")%>&trealname=<%=rs("trealname")%>">留言</a></td>
</tr>
<% rs.movenext
loop %>
4.3.3查看留言留言箱cksly.asp页面的实现
学生可以通过点击查看留言查看其它用户主要是教师用户给自己的答疑留言。

留言表中可以得知留言主题,留言人,留言时间,状态。实现的过程是:首先建立记录集,然后在学生留言箱中查询该学生的所有留言。留言箱状态标志为1的状态显示为新,为0的显示为已读。
实现的主要语句:
sql="select * from slyx where sname='"&sname&"' order by id desc"
<%if rs("new")=1 then%>
<font color="#FF0000">新</font>
<%else%>
已读
<%end if%>
4.3.4管理学生资料grzl.asp的实现
学生注册后个人资料还没有完善。同时学生的个人资料同时可能随时发生变化,比如联系方式等。所以需要具有管理个人资料功能。
实现的原理:首先通过建立一个查询学生用户名为该学生(利用cookie跟踪用户名)的记录集。并且利用查询的记录集作为数据源在页面中文本框中显示出来,用户可以通过对文本框的值进行修改和完善。最后提交。提交后将提交的字段值更新记录集,来达到修改和完善的目的。

主要的实现语句:
<%
sname=request.cookies("sname")
if sname="" then
response.write""
end if
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from student where sname='"&sname&"'"
rs.open sql,conn,3,3 %>
<% srealname=request("srealname")
ssex=request("ssex")
sdate=request("sdate")
jg=request("jg")
saddress=request("saddress")
sdianhua=request("sdianhua")
semail=request("semail")
if srealname="" then response.end
rs("srealname")=srealname
rs("ssex")=ssex
rs("jg")=jg
rs("saddress")=saddress
rs("sdianhua")=sdianhua
rs("semail")=semail
rs.update
rs.close
conn.close
set conn=nothing
response.write""
%>
4.3.5学生在线考试wyks.asp的实现
学生在系统中可以实现在线考试和系统自动评分。考试是系统从试题库中随机抽起试题,这里我们设置随机的从试题库中随机抽起5道试题。随机抽起试题利用函数rnd()实现。由于该函数是随机得到的一个小数,所以乘以10后后再起整数而得到一个小于10的整数,因为试题库暂时只有10道题,如果试题库的试题数是100道,这里就乘以100。依次类推。th=int(rnd()*10)。

当随机得到th这个变量的值后,将该变量作为题号,从试题库中抽起该题号的试题和答案。答案值隐藏在表单中。提交时一起提交,作为评分的依据。主要实现的语句:
<% for x=1 to 5
th=int(rnd()*10)
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from tk where th='"&th&"'"
rs.open sql,conn,3,3%>
这里利用循环语句实现从试题库中抽起5次试题。
最后对提交的答案根据一同提交的答案评分,将评分结果记录到成绩库中。
记录到成绩库中的字段包括:学籍号,成绩,考试时间。实现的语句:
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from cj"
rs.open sql,conn,3,3
rs.addnew
rs("xjh")=xjh
rs("cj")=y
rs.update
rs.close
conn.close
set conn=nothing
response.write""
4.3.6 成绩查询cjcx.asp页面的实现

学生在线考试后可以随时查询学生的成绩。查询的登录界面如上图。这里需要输入学籍号,考试时间。考试时间不选择则查询的是该学籍号学生的所有成绩记录。
该表单提交给searchcj.asp文件。在这个文件中实现查询。
关键的查询语句是:
if selectval="选择时间" then
sql="select cj.xjh,cj.cj,cj.kssj,student.srealname from cj,student where cj.xjh='"&xjh&"' and cj.xjh=student.xjh order by cj.id desc"
else
sql="select cj.xjh,cj.cj,cj.kssj,student.srealname from cj,student where cj.xjh='"&xjh&"' and kssj='"&selectval&"' and cj.xjh=student.xjh order by cj.id desc"
end if
教师的功能模块中网页实现的原理方法和学生模块中相似,这里就不再一一说明。下面就教师添加试题功能页面说明:
4.3.7 教师添加试题tjst.asp页面的实现
教师可以通过该网页定期发布考试试题到题库中,以供学生在线考试。

添加的试题到题库中包括添加字段:题目编号,答案,题目内容。实现的原理是:首先建立一个查询记录集,查询该试题编号是否使用,对未使用的题目编号可以添加记录到记录集中。实现的语句:
<%function encodestr(str)
str=trim(str)
str=replace(str,"<","<")
str=replace(str,">",">")
str=replace(str,"'","""")
str=replace(str,vbCrLf&vbCrlf,"</p><p>")
str=replace(str,vbCrLf,"<br>")
str=Replace(str,"&#","&#")
encodestr=replace(str," "," ")
end function
th=request("th")
tmlr=encodestr(request("tmlr"))
tmda=request("tmda")
if tmlr="" then response.end
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from tk"
rs.open sql,conn,3,3
rs.addnew
rs("th")=th
rs("tmlr")=tmlr
rs("tmda")=tmda
rs("date")=now()
rs.update
rs.close
conn.close
set conn=nothing
response.write""
%>
第五章 本系统的技术特色
5.1 利用cookie变量来跟踪和校验合法用户
省略
5.2 分页技术
当教师或者学生用户进入相应的用户首页时,以教师首页为例:在教师首页中,有学生对该教师的留言,当留言的条数有多条时,首页就不能全部显示,这样,就需要采用分页技术。
记录集对象的一下三个属性允许我们将从数据库查询的结果分成多个网页:
AbsolutePage-设置或返回当前网页的记录。
PageCount-返回一个记录集的网页的数目。
PageSize-设置或返回包含在单个网页中的记录数目(默认值为10)。
在tmain.asp网页中,首先利用查询语句得到一个记录集rs,然后设置记录集的属性来设设置单个网页的记录数目,语句如下:
sql=“select * from student order by id desc”
rs.open sql,conn,3,3
totalrecs=rs.recordcount
rs.pagesize=10
本网页设置显示的记录数目是10,当然可以通过修改rs.pagesize的值来随意修改显示的记录数目。
5.3 利用随机函数实现随机抽题
本系统提高了简单的学生在线考试。在线考试的试题来自数据库中的tk表。Tk表中的试题由教师以及添加和设置。学生在这里只要合法登录后就可以实现从tk表中随机抽起试题并考试。这里系统利用了随机函数rnd()函数来实现。该函数是随机的得到一个大于0小于1的小数,我们结合int()函数来得到一个大于等于1小于等于10的随机整数(因为这里数据库题库中以10道题为例),利用循环语句循环5次就可以随机的得到5道试题。如果数据库中试题数目是100道这里就可以乘以10修改为乘以100。
第六章 系统的测试和展望
当系统的设计完成后,我们对整个系统进行了严格的测试。在测试的过程中发行了许多编程中的疏漏,在老师的指导下,在同学们的合作下,在自己的努力下这些疏漏和问题都已经解决。
当然由于自己是首次完成这样的一个综合系统的开发,受自己的能力,水平的限制,对自己完成的系统还是有很多地方不尽人满意。这些不满意的地方同时也是自己以后的努力方向,下面对这些作如下归纳:
1:尽管cookie变量可以有效的防范非法用户的进入。但是cookie变量本身也成为一个令人担心的问题。当我们的用户没有完全退出系统时,cookie变量帮助了那些非法用户。
2:不是所有的浏览器都支持cookie变量,造成很多用户抱怨不能正常使用该系统。对不支持或者cookie变量工作不正常的浏览器如何设计用户进入系统同时又可以有效防范。
3:在线考试的功能设计没有限制考试时间。本系统用户虽然可以实现在线考试,但是,设计的时候没有设置时间限制。
如果提供系统的安全性,完整性,高效性,是我对该系统以后的努力方向。
总 结
省略
致 谢
省略
参考文献
【1】 |美| Eric A. Smith 著,韩军 马云 等译Active Server Pages宝典 电子工业出版社,2000,6
【2】 |美| Greg Buczek MCSD.MCT 编著 李博 于骞 译 科学出版社2000,9
【3】 萨师煊 王珊 数据库系统概论 高等教育出版社2000,3
【4】|美| R.Allen Wyke 著 闻道工作室 译 机械工业出版社 2001,6
【5】王姗 陈红 编著 《数据库系统原理教程》第一版 北京 清华大学出版社
【6】宣小平 但正刚 张文毅 编著 《ASP数据库系统开发实例导航》 第一版 北京 人民邮电出版社 2003.1
【7】杜煜 姚鸿 编著 《FrontPage 2000 实用技能》 第一版 北京 清华大学出版社 2000.1
【8】李四达 编著 《Dreamweaver 4.0 精彩网页设计教程》第一版 北京 人民邮电出版社 2001.3
【9】黄聪 编著 《Dreamweaver 4.0 基础 实例 技巧 》第一版 北京 海洋出版社 2001.11
附录:数据库各个表格
1:在Acceess下创建数据库表界面:

student表的设计

teacher表的设计

slyx表的设计

kc表的设计

cj表的设计

tk表的设计

tlyx表的设计
附录2:网页部分源代码
省略
本项目源码及完整论文如下,有需要的朋友可以点击进行下载
| 序号 | 毕业设计全套资源(点击下载) |
|---|---|
| 本项目源码 | 基于asp+access的网上远程教育网设计与实现(源码+文档)_asp_BS架构_网上远程教育网.zip |