ASP+SQL Server典型网站建设案例

更新时间:2023-11-19 14:23:01 阅读: 评论:0

美好的祝福-我衷心的谢谢你

ASP+SQL Server典型网站建设案例
2023年11月19日发(作者:一件开心的事作文)f文档可能在W

辣大叔酱板鸭

AP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。

2

ASP+SQL Server 典型网站建设案例

1.1

应 用 背 景

随着社会的进步和商品经济的不断发展,社会对劳动者和技术人员的知识和能力水平的要求越来 越高.考试作为衡量人的能力的重要手段,在现代生活中的地位进一步提高,并深入到社会的各个方 面.各种各样的学历考试,资格证书考试层出不穷.同时,Internet 技术的发展使得考试的技术手段和 载体发生了革命性的变化.Internet 的开放性和分布性的特点以及基于 Internet 的巨大计算能力使得考 试突破了时间和空间的限制.基于 Internet 的考试系统正成为人们的研究热点之一.例如在英国,已经 实现了英语资格考试的网上学习和水平认证全过程. 计算机应用迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等,使得基于 Web 的在 线考试系统成为现实.基于 Web 的在线考试系统可以发挥网络的优势,建立大型,高效,共享的题库 和实现随时随地的考试,降低考试成本,减少人为干扰,减轻教师负担,节约人力,物力和财力. 根据考试管理的实际要求,结合试卷管理的工作流程,系统应实现以下功能: 掌握本考试范围内所有考生的基本情况,包括学号,姓名,成绩等. 试卷的自动生成,答题完成后,系统对照正确答案,给出试卷分数. 对试题库进行增加,删除,修改等更新操作. 不同用户的管理功能不同.管理员类用户可以创建试卷,策划每期考试题型及分数,对试题库 进行维护,批准补考,查询学生以往考试成绩等功能.考生类用户可以参加考试,完成答卷.

1.2

系 统 设 计

一个好的系统离不开科学,详实的系统设计.系统只有建立在系统设计基础上,才能成为一个好 的系统.

1.2.1 系统构架

系统设计的基础是系统构架. 1.基于 B/S 体系 整个系统采用 Browr/Web/DataBa 的 3 层体系结构. Browr/Server 的系统中, 用户可以通过浏 览器向分布在网络上的服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏 览器.B/S 结构简化了客户机的工作,客户机上只需配置 Web 浏览器即可.服务器将担负更多的工作, 对数据库的访问和应用程序的执行将在服务器上完成.浏览器发出请求,而其余如数据请求,加工, 结果返回以及动态网页生成等工作全部由 Web Server 完成. 在 Browr/Server 三层体系结构下,表示层(prentatioon),功能层(business logic),数据层 (data rvice)被割成 3 个相对独立的单元. 第一层(表示层):Web浏览器.在表示层中包含系统的显示逻辑,位于客户端.它的任务

第1章

在线考试系统

3

是由Web浏览器向网络上的Web服务器提出服务请求,Web服务

器对用户身份进行验证后用 HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览 器



序扩展功能的Web服务器.在功能层中包含系统的事务处理 逻辑,位于Web服务器端.它的任务是接受用户的请求,首先需要执行相应的扩展应用程序 与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务 器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端. 第三层(数据层):数据库服务器.在数据层中包含系统的数据处理逻辑,位于数据库服务 器端.它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询,修改,更新等 功能,把运行结果提交给Web服务器.系统采用SQL Server 2000数据库. Browr/Server 三层体系结构,如图 1.1 所示. 2.系统总体构架图 在线考试系统总体构架图,如图 1.2 所示.

前端应用管理系统 B/S 结构 用户资

辣大叔酱板鸭

料系统

客户机 HTTP 服务器 Web 服务 器(IIS) 浏览器 HTML Web 应用 程序 数据库

考试系统

后端应用管理系统 B/S 结构 管理员资料系统 IIS SQL Server 2000 Windows 2000/NT/XP/98 考试管理系统

图 1.1

B/S 三层体系结构图

图 1.2

在线考试系统总体框架图

1.2.2 系统功能模块设计

系统主要功能如下: 学生在线注册成功后可以登录到考试中心,参加由系统按最新一期试卷的设置随机产生的试 题的考试. 学生提交答题,系统自动对照数据库正确答案算出分数,即学生当期考试的成绩提交到成绩 库中. 学生只能对每一期考试提交一次成绩,如果不及格,后台管理员(教师)可以设置补考机会, 一个人一期考试只能有一次补考机会. 题库的维护(包括判断题,选择题和填空题),试卷的维护,成绩的统计,学生的查询与管 理等. 系统主要分为前端,后端两大管理系统,包括 4 大功能模块,如图 1.3 所示. 1.用户类型 系统用户分为两类:学生类用户和管理员(教师)类用户.学生类用户是指当前系统中所有的学 生.此类用户只能对自己的信息进行初次注册及浏览,不具有浏览和查询他人信息的权利,也不能对

4

ASP+SQL Server 典型网站建设案例

自身和他人的信息进行管理.管理员(教师)类用户可以对自己和他人的信息进行浏览,查询以及修 改等管理.同时具有题库的维护,试卷的维护和成绩的统计等功能.

管理员信息系统 后 端 管 理 系 统 考试管理系统 管理员信息修改

判断题管理

选择题管理

填空题管理

试卷管理

成绩管理

学生管理

前 端 管 理 系 统

学生资料系统

新学生考试资格注册

参加考试

考试系统

以往成绩查询

查看答案分析结果 图 1.3 功能模块

2.后台考试管理模块 此模块只对管理员(教师)类

用户开放.管理员(教师)类用户可以对题库(包括判断题,选择 题和填空题)进行增加,删除,修改等操作.如果当

可以在现有信息中进行查询.不仅可以对策划试卷的题型,分数等进行创建,修改和删除 操作,而且可以对考试成绩进行查询,根据实际情况对具有补考资格的学生批准补考,还可以对学生 资料进行查找和删除. 3.考试管理模块 此模块对学生类用户开放.学生类用户可以浏览自己以往的学习成绩,也可以参加考试,对创建

第 1 章 在线考试系统

5

的试卷中的题目进行回答.答题完毕,系统自动对照数据库正确答案算出分数,即学生当期考试的成 绩提交到成绩库中.

1.2.3 系统主要工作流程

1.管理员(教师)在线考试后台管理 管理员(教师)在线考试后台管理程序流程图,如图 1.4 所示.

判断题管理 type_ 选择题管理 type_ 填空题管理 type_ 试卷管理 成绩管理 学生管理 student_ 管理员资料

管理员(教师)登录页面 admin/

登录 失败

成功

在线考试后台管理页面

图 1.4

管理员(教师)在线考试后台管理程序主要流程图

2.学生在线考试 学生在线考试前台管理程序流程图,如图 1.5 所示.

学生注册页面 学生登录页面

登录 成功 在线考试管理页面

失败

以往考试成绩查询页面 my_

在线考试答题页面

图 1.5

学生在线考试前台管理程序流程图

6

ASP+SQL Server 典型网站建设案例

1.2.4 数据库的分析与设计

本次开发的数据库包括 4 方面. 题库数据:包括了判断题,选择题和填空题 3 种类型题目.包括题目的题干,答案和加入日 期信息. 管理员,学生资料信息数据:包括姓名,密码,性别,班级和学号等基础数据. 成绩资料表数据:包括学生学号,分数,考试日期和是否补考等基础数据. 考试题型数据:包括考题数据,每题分数等基础数据. 本系统将使用 SQL Server 2000 作为数据库管理系统.安装 SQL Server 2000,打开企业管理器,新 建一个数据库,将其命名为 数据库中包含的数据表及其相应功能如表 1.1 所示.

表 1.1 test数据库包含的数据表及其功能 数 据 表 功 能

admin student examination test rightorwrong lecting filling

存放管理员(教

辣大叔酱板鸭

师)类用户基本信息 存放学生类用户基本信息 存放学生考试成绩基本信息 存放试卷基本信息 系统判断题题库 系统选择题题库 系统填空题题库

注意:虽然 SQL Server 建立的数据表中字段的名称可以支持中文,但是从以往经验来看,用于系统 开发而建立的数据库最好不要使用中文,而是使用对应于中文意义的英文.这是基于以下两 点:在某些不支持中文的系统中,字

段名称含有中文的数据库将不能够被识别,这样数据库 就不能够使用,从而使数据库的可

dows 操作系统中, 在某些情况下中文字段也有可能会不能识别,或者不能很好地识别. 1.管理员(教师)信息表 admin 管理员 (教师) 信息表用于存放管理员 (教师) 类用户的基本信息, 包括管理员 (教师) (admin) 姓名 , 管理员 (教师) 密码 (adminpassword) 两项基本信息. 在已创建的 SQL Server 数据库 test 中, 右击 "表" 创建一个表,名为 admin.向表中添加字段 admin 和 adminpassword.其中,admin(姓名)字段作为该 表的主关键字(primary key),惟一标识了一个管理员(教师)用户记录的信息.管理员(教师)信 息数据表结构如表 1.2 所示.

表 1.2 admin 字 段 名 数据类型及长度 说 明 备 注

admin adminpassword

nvarchar(10) nvarchar(6)

管理员姓名 管理员密码

主关键字 不能为空

第 1 章 在线考试系统

7

2.学生信息表 student 学生信息表主要用于存放学生类用户的基本信息.包括学生学号(studentnumber),学生姓名 (studentname) 学生密码 , (studentpassword) 学生性别 , (x) 学生班级 , (class) 和注册日期 (registerdata) 6 个字段.其中,studentnumber(学生学号)字段作为主关键字.学生信息表结构如表 1.3 所示.

表 1.3 student 字 段 名 数据类型及长度 说 明 备 注

studentnumber studentname studentpassword x class registerdata

nvarchar(8) nvarchar(10) nvarchar(6) char(2) nvarchar(30) smalldatetime

学生学号 学生姓名 学生密码 学生性别 学生班级 注册日期

主关键字 不能为空 不能为空 允许为空 允许为空 允许为空

3.考试成绩信息表 examination 考试成绩信息表主要用于存放学生类用户的考试成绩,是否获得补考及其补考成绩等基本信息. 包 括 试 卷 编 号 ( examinationid ) , 学 生 学 号 ( studentnumber ) , 学 生 成 绩 ( score ) , 考 试 日 期 (examinationdata),是否补考(pass),补考成绩(makeup)和补考日期(makeupdata)7 个字段. 其中,examinationid(试卷编号)与 studentnumber(学生学号)作为主关键字.pass(是否补考)默认 值为 0,makeup(补考成绩)默认值为 0.考试成绩信息表结构如表 1.4 所示.

表 1.4 examination 字 段 名 数据类型及长度 说 明 备 注

examinationid studentnumber score examinationdata pass makeup makeupdat

辣大叔酱板鸭

a

int nvarchar(8) int smalldatetime bit int smalldatetime

试卷编号 学生学号 学生成绩 考试日期 是否补考 补考成绩 补考日期

不能为空 不能为空 允许为空 允许为空 允许为空 允许为空 允许为空

4.考试题型信息表 test 每次考试之前,由管理员(教师)为用户创建本次考试的试卷,试卷信息被保存在试卷信息表中. 包括试卷编号(examinationid),判断题数(rightorwrongid),判断题每题分数(rightorwrongscore), 选择题数 (lectid)

选择题每题分数 , (lectscore) 填空题数 , (fillingid) 填空题每题分数 , (fillingscore) 和设置日

//

inationid(试卷编号)作为主关键字.examinationid(试 卷编号)标识为"是",标识种子为"1",标识增量为"1".考试题型信息表结构如表 1.5 所示.

8

ASP+SQL Server 典型网站建设案例

表 1.5 字 段 名 数据类型及长度

test 说 明 备 注

examinationid rightorwrongid rightorwrongscore lectid lectscore fillingid fillingscore tupdata

int int int int int int int smalldatetime

试卷编号 判断题数 判断题每题分数 选择题数 选择题每题分数 填空题数 填空题每题分数 设置日期

不能为空 允许为空 允许为空 允许为空 允许为空 允许为空 允许为空 允许为空

5.判断题信息表 rightorwrong 判断题是考试系统能够支持的考试题型的一种,判断题信息保存在判断题信息表中.包括判断题 编号(rightorwrongid),题目内容(question),正确答案(answer)和加入日期(tupdata)4 个字 段.其中,rightorwrongid(判断题编号)作为主关键字.rightorwrongid(判断题编号)标识为"是", 标识种子为"1",标识增量为"1".判断题信息表结构如表 1.6 所示.

表 1.6 rightorwrong 字 段 名 数据类型及长度 说 明 备 注

rightorwrongid question answer tupdata

int nvarchar(250) bit smalldatetime

判断题编号 题目内容 正确答案 加入日期

不能为空 允许为空 允许为空 允许为空

6.选择题信息表 lecting 选择题除问题本身外,具有 4 个可选答案,选择题信息保存在选择题信息表中.包括选择题编号 (lectid) 题目内容 , (question) 答案选项 1 , (result1) 答案选项 2 , (result2) 答案选项 3 , (result3) , 答案选项 4(result4),正确答案(answer)和加入日期(tupdata)8 个字段.其中,lectid(选择 题编号)作为主关键字.lectid(选择题编号)标识为"是",标识种子为"1",标识增量为"1". 选择题信息表结构如表 1.7 所示.

表 1.7 lecting 字 段 名 数据类型及长度 说 明 备 注

lectid question result1 result2 result3

int nvarchar(250) nvarchar(100) nvarchar(100) nvarchar(100)

选择题编号 题目内容 选项1 选项2 选项3

不能为空 允许为空 允许为空 允许为空 允许为空

第 1 章 在线考试系统

9 续表







数据类型及长度









result4 answer tupdata

nvarchar(100) nvarchar(100) smalldatetime

选项4 正确答案 加入日期

允许为空 允许为空 允许为空

7.填空题信息表 filling 填空题信息保存在填空题信息表中,包括填空题编号(fillingid),题目内容(question),正确答 案(answer)和加入日期(tupdata)4 个字段.其中,fillingid(填空题编号)作为主关键字.fillingid (填空题编号)标识为"是",标识种子为"1",标识增量为"1".填空题信息表结构如表 1.8 所示.

表 1.8 filling 字 段 名 数据类型及长度 说 明 备



fillingid question answer tupdata

int nvarchar(250) nvarchar(250) smalldatetime

填空题编号

许为空

8.以上各表的关系 从实际关系来说,学习成绩信息表中的试卷编号,学生学号与考试题型信息表中的试卷编号和学 生信息表中的学生学号存在着必然的联系.因此需要建立 examination 表,test 表,student 表相对应字 段的关系.定义下列两组参照关系: examination表中的examinationid字段与test表中的examinationid字段为多对一关系. examination表中的studentnumber字段与student表中的studentnumber字段为多对一关系. 各

辣大叔酱板鸭

表的关系反映在 SQL Server 的数据库关系设计图中,如图 1.6 所示.

图 1.6

表间关系图

10

ASP+SQL Server 典型网站建设案例

注意:在数据库设计中,表与表之间存在着不可或缺的关系.在所有关系中,主关键字(PK)和外 部关键字(FK)最为重要.主关键字——能惟一标识表中的每一列的一列或多列的组合,这 样的列就成为主关键字.每个表都必须有且只能有一个主关键字,其值惟一地标识表中的每 一行.外关键字——用于建立和加强两个表数据之间的链接的一列或多列的组合,其值或是 与主关键字相同,或是为空(NULL),外关键字可有多个.

1.3

1.在线考试后台管理主窗口

程序主要页面设计

单击判断题管理,选择题管理,填空题管理,试卷管理等,实现对试题题库增加,修改或删除管 理.单击成绩管理,学生管理,系统管理,实现对系统基本信息管理.在线考试后台管理主窗口如 图 1.7 所示.

图 1.7

在线考试后台管理主窗口

2.判断题管理窗口 可以对判断题题目进行编辑,删除和添加,同时也可以对判断题题目进行查找,分页及页面跳转 功能,将在此处阐述,以后不再雷同介绍,判断题管理窗口如图 1.8 所示. 单击"编辑"按钮,进入编辑界面.可以对判断题题目,答案进行修改,并单击"提交"按钮保 存到数据库中.判断题修改窗口如图 1.9 所示.

第 1 章 在线考试系统

11

图 1.8

判断题管理窗口

图 1.9

判断题修改窗口

单击"添加新题"按钮,进入添加新题界面.可以对判断题题目进行添加,并单击"提交"按钮, 保存到数据库中.添加判断题窗口如图 1.10 所示. 3.选择题管理窗口 可以对选择题进行编辑,删除和添加,同时也可以对选择题题目进行查找.选择题管理窗口如 图 1.11 所示.

12

ASP+SQL Server 典型网站建设案例

图 1.10

添加判断题窗口

图 1.11

选择题管理窗口

4.填空题管理窗口 可以对填空题进行编辑,删除和添加,同时也可以对填空题题目进行查找.填空题管理窗口如 图 1.12 所示.

第 1 章 在线考试系统

13

图 1.12

填空题管理窗口

5.试题管理窗口 可以对设定考期试卷题型题目,分数进行修改.修改之后在修

改复选框内用"√"表示.如图 1.13 所示为试题管理

"按钮,进入试卷设置窗口,如 图 1.14 所示.填写完毕,单击"增加"按钮,保存试卷设置.

图 1.13

试题管理窗口

图 1.14

试卷设置窗口

6.成绩统计管理窗口 可以查询每个考试批次的学生成绩,以及是否批准补考和补考考试成绩等信息.可以按学生姓名

14

ASP+SQL Server 典型网站建设案例

查找学生成绩.单击下拉菜单,选择考试批

辣大叔酱板鸭

次,下方显示考生姓名,分数,补考设置和补考成绩信息. 单击"批准补考"链接,批准考生补考.成绩统计管理窗口如图 1.15 所示.

图 1.15

成绩统计管理窗口

7.学生统计管理窗口 显示学号,考生姓名,性别,班号信息,以及是否删除信息,可以按照考生姓名进行查询,单击 "查找"按钮,如图 1.16 所示. 8.系统管理窗口 填写账号,密码,单击"修改账号"按钮,修改后台管理系统账号及密码,如图 1.17 所示.

图 1.16

学生统计管理窗口

图 1.17

系统管理窗口

第 1 章 在线考试系统

15

9.学员注册窗口 在表格内,填写新学员注册信息,单击"提交"按钮保存学员注册信息,如图 1.18 所示.

图 1.18

学生注册窗口

10.考试预备窗口 显示当前考试基本考试题型及分数.单击"进入考试"链接,进入考试窗口界面,如图 1.19 所示.

图 1.19

考试预备窗口

11.考试窗口 对试卷进行相应的解答,解答完毕单击"提交"按钮,弹出考试在线判卷窗口,显示考试答案及 成绩.如图 1.20 所示为考试窗口.

16

ASP+SQL Server 典型网站建设案例

图 1.20

考试窗口

1.4

1.4.1 IIS 配置

IIS 配置与 SQL Server 数据库连接

IIS 是 Internet Information Server 的缩写,是微软提供的 Internet 服务器软件,包括 Web,FTP, Mail 等服务器.本文以 Windows 2000 服务器版操作系统为例,介绍 Web 服务器的安装和设置方法. 目前运行 IIS 的最理想平台是 Windows 2000 服务器版和高级服务器版. Windows 9x/Me 里也有 IIS, 但只是 PWS(个人 Web 服务器),功能很有限,只支持 1 个连接.Windows XP 里的 IIS 也只支持 10 个连接. IIS 是 Windows 操作系统自带的组件.如果在安装操作系统时没有安装 IIS,则应手动安装.安装 步骤如下: (1)打开"控制面板"窗口,双击"添加或删除程序"图标,运行"添加或删除程序"窗口. (2)选择"添加或删除程序"窗口内"添加/删除 Windows 组件"选项,弹出"Windows 组件向 导"对话框. (3)选中"Internet 信息服务(IIS)"复选框,单击"下一步"按钮,执行操作.IIS 安装完毕. 接下来,就是要对系统进行新建虚拟目录操作: (1)打开"控制面板"窗口,双击"管理工具"图标,进入"管理工具"窗口. (2)双击"Internet 服务管理器"图标,进入"Internet 信息服务"窗口. (3)单击"操作"目录,选择下拉菜单"新建"|"虚拟目录"命令,如图 1.21 所

示.

第 1 章 在线考试

"欢迎"窗口,单击"下一步"按钮. (5)在"别名"文本框中输入映射后的名字,如 zxks,单击"下一步"按钮. (6)在"目录"文本框中输入要映射的目录,如 d:softwarezxks,单击"下一步"按钮,进入设 置访问权限窗口,如图 1.22 所示.

图 1.22

设置访问权限窗口

(7)在这里选择正确的访问权限,再单击"下一步"按钮,即完成设置. 删除映射的方法:打开"Internet 信息服务"窗口,在虚拟目录别名上单击鼠标右键,选择"删除" 命令即可.

1.4.2 创建 SQL Server 数据库

打开 SQL Server 2000 的"企业管理器"窗口.右击"数据库"分支,弹出右键目录,如图 1.23 所示.选择"新建数据库"命令,弹出"数据库属性"窗口,如图 1.24 所示.在"名称"文本框内输

18

ASP+SQL Server 典型网站建设案例

入 test,单击"确定"按钮,完成创建.

图 1.23

新建数据库窗口

图 1.24

"数据库属性"窗口

按照要求建好数据库后,需要建立网站页面与后台服务器的链接,页面名称为 .以后当 需要对程序中的数据库进行操作时,只需要用命令就可以直接调用该程 序,打开数据库,提高程序的可读性,同时也提高程序便捷性.代码如下:

<% Set conn = Object("tion") '创建一个数据库链接对象 conn,方便后面调用 connstr="Provider=SQLOLEDB;Data Source=(local);Initial Catalog=test;Ur ID=sa;Password=yanyan;" '创建一个数据库的 recordt 对象,方便以后调用 connstr '打开数据库 %>

第 1 章 在线考试系统

19

1.5

用户登录页面

用户登录页面主要是为用户提供登录的窗口,用户通过在页面内输入正确的用户名及密码,取得 登录系统的权利.否则不能登录系统,实现在线考试. 用户登录页面主要分为两个部分:顶部为"在线考试系统"的信息图片;中间左侧为用户登录框, 右侧为系统图片.它用 firework 创建系统图片文件,存为 jpg 格式或 gif 格式,作为各动态页面顶部 或页面中图片.主要由顶部图片页面()和用户登录页面()组成,页面如图 1.25 所示.

图 1.25

用户登录页面

1.5.1 顶部图片页面

顶部图片页面():为了

辣大叔酱板鸭

使页面标准和美观,同时避免重复,节约代码,将顶部头文件制 作成为模块,以后通过命令直接调用.顶部图片页面如图 1.26 所示. 创建新的页面,首先在页面上添加一个 1×1 的表格用来固定图片的位置,设置表格的各项属性, 包括边框属性,长度和宽度等,最后加入文件夹 images 下事先保存的图片.代码如下:



注意:图片最好选用相对路径,这样可以防止因为文件夹位置变动而引起的图片路径丢失.

20

ASP+SQL Server 典型网站

建设案例



1.5.2 用户登录页面

用户登录页面()是一个静态页面,如图 1.27 所示.

图 1.27

用户登录页面

创建新页面,在页面中添加一个 1×1 的表格 a,在表格 a 内加入一个表单,给表单命名. 在表单内插入一个 1×3 的表格 b,在 b 的第三列单元格内加入图片,第二列单元格内插入一个 3×5 列的表格 c. 最后在表格 c 内第二列单元内加入文本对话框两个,将按钮控件移至第二列单元格内.给两个文 本框命名,分别命名为 student 和 的 type 属性定义为 password,这样用户输入字符都将显示 为"*"号,以隐藏密码. 设置表格,文本对话框的各项属性.定义"提交"按钮 onclick 事件:onclick="check()". 1.用户登录页面 ASP 代码 用户登录页面通过 ASP 代码判断用户名及密码是否填写,填写是否正确.若填写正确,则将用户 信息赋值给 ssion 变量,以方便以后调用.代码如下:

<%'调用 连接数据库 %>

使用 JavaScript 语言,定义过程 check(),判断用户名及其密码是否为空.为空则弹出错误"警示"

第 1 章 在线考试系统

21

对话框.代码如下:

//使用 javascript 语言,创建函数 check(),检测用户姓名及密码是否为空 <script language=javascript> function check() { //如果 student 文本框内容为空,弹出"警示"对话框提醒"请输入用户名" if (==" ") {alert("请输入用户名"); (); //将焦点集中在 student 文本框 return fal;} //避免提交失败,防止 IE 重载该页面 /

辣大叔酱板鸭

/如果 pwd 文本框内容为空,弹出"警示"对话框提醒"请输入用户密码" if (==" ") {alert("请输入用户密码"); (); //将焦点集中在 pwd 文本框 return fal;} //避免提交失败,防止 IE 重载该页面 //获取引藏域名为 ctype 的值,直接给 ctype 赋值为 add ="add"; (); //提交 form1 表单 } </script>

使用 VBScript 语言,如果用户名及密码不为空,查找表 student,检验用户名及密码是否正确.代 码如下:

t=125 '定义超时时间为 125 '获取提交变量 ctype 的值,如果 ctype 的值为 add,则将 ssion 变量各值赋值为空 if trim(request("ctype"))="add" then ssion("student")=" " ssion("class")=" " ssion("id")=" " ssion("number")=" " ssion("x")=" " sql="lect * from student where studentname=' "&trim(request("student"))&' " and studentpassword=' "&trim(request("pwd"))&" ' " 'sql 语句定义查询条件 t rs=e(sql) '执行 sql 语句 '如果用户名或密码不正确,使用 javascript 语言, 弹出"警示"对话框 if then %> <script language=javascript> alert("无此学员!请先注册"); </script> <%'使用 vbscript 语言,如果用户及密码正确,

则赋值 ssion 变量姓名,学号等信

tudent")=rs("studentname") ssion("class")=rs("class") ssion("number")=rs("studentnumber") ssion("x")=rs("x") ssion("timen")=now %>

22

ASP+SQL Server 典型网站建设案例

<script language=javascript> //使用 javascript,显示 页面 var now=new Date() //显示 窗口,同时避免 IE 使用 history 记录 te("?time="+e()); </script> <%end if end if %>

2.用户登录页面正文代码 页面正文代码勾画页面表格,表单,文本框,文字和按钮等控件属性.页面代码如下:

<%'调用 页面%> …
辣大叔酱板鸭

"100"> <%'表格 a 属性%> <%xt '指针下移一个记录 wend%> …

1.13

成绩管理页面

成绩管理页面()主要对学生成绩进行管理,页面如图 1.44 所示.

图 1.44

成绩管理页面

50

ASP+SQL Server 典型网站建设案例

创建页面,

标题"成绩统计管理",插入表格 a,在表格 a 内输入文字"各期考试统 计","学生基本资料==> 性别: 班号: 学号:","(参加过 期考试,最高 分,最低 分, 次 不及格)".在表格 a 内输入一个 2×3 的表格 b,表格 b 第一行第一列单元格内输入文字"期数", 第一行第二列单元格输入文字"分数",第一行第三列单元格内输入文字"补考成绩",第二行第一 列单元格内输入文字"第 期".然后插入表单,在表单内输入文字"查找其他考生 请输入考生姓名" 文本框.最后设置各控件属性.页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.查询学生成绩 查询学生成绩最高分数,最低分数,补考最低分数和补考最高分数.代码如下:

<%sql="lect student.* from student where tnumber="&request("studentnumber") 'sql 语 言的查询语句 t rs=e(sql) '执行查询语句 t rs1=e("lect * from examination where studentnumber="&request("studentnumber")) t rs2=e("lect * from examination where studentnumber="&request("studentnumber")) '如果 rs2 的记录不为空,则执行查询语句,对比找出学生成绩最大,最小数据,最大,最小补考成绩.为空,则 最大成绩,最小成绩,最大补考成绩,最小补考成绩变量赋值为 0 if not then sql3="lect count(studentnumber) as ci, max(score) as hf ,max(makeup) as hbf,min(score) as lf,min(makeup) as lbf from examination where studentnumber="&request("studentnumber")&" group by studentnumber" t rs3=e(sql3) ci=rs3("ci") if rs3("hf")>rs3("hbf") then hf=rs3("hf") el hf=rs3("hbf") end if if rs3("lf")>rs3("lbf") then lf=rs3("lf") el lf=rs3("lbf") end if sql4="lect count (*) as bjg from examina

辣大叔酱板鸭

tion where studentnumber="&request("studentnumber")&" and score<60 or makeup<60 group by studentnumber" 'sql 语言的查询语句 t rs4=e(sql4) '执行查询语句 bjg=rs4("bjg") el ci=0 hf=0 lf=0 bjg=0 end if %>

第 1 章 在线考试系统

51

2.成绩管理页面正文代码 页面正文代码勾画页面,循环插入学生成绩.代码如下:

… … <%while not '循环语句,直到记录不为空 sqls="lect * from examination where studentnumber="&request("studentnumber")&" and examinationid ="&rs1("examinationid") t rss=e(sqls) '执行查询语句 if then '如果记录为空,则变量 fen,bfen 赋值为"未参

n="未参加" el t rsss=e("lect * from test where examinationid="&rss("examinationid")) zf=rsss("rightorwrongid")*rsss("rightorwrongscore")+rsss("lectid")*rsss("lectscore")+ rsss("fillingid")*rsss("fillingscore") '判断成绩是否及格,不及格分数用红色显示 if rss("score")>=cint(zf*6/10) then fen=""&rss("score")&"分" el fen=""&rss("score")&"分" end if '判断是否取得补考资格,取得判断是否补考,参加补考成绩是否及格,不及格分数用红色显示 if rss("pass")=1 then IF rss("makeup")=0 then bfen="无" el if rss("makeup")>=cint(zf*6/10) then bfen=""&rss("makeup")&"分" el bfen=""&rss("makeup")&"分" end if end if el bfen="未参加" end if end if %>

52

ASP+SQL Server 典型网站建设案例

<%xt wend%> …

1.14

学生管理界面

学生管理界面分为学生管理页面(),主要是对学生基本信息进行浏览;批准考试页面 (test_),批准学生是否补考.

1.14.1 学生管理页面

学生管理页面()如图 1.45 所示.

图 1.45

学生管理页面

创建页面,首先输入页面标题"学生统计管理",插入表格 a,在表格 a 内输入文字"往期统计",

第 1 章 在线考试系统

53

插入下拉菜单. 随后插入表单 a, 在表单 a 内输入文字 "以下为姓名为 的考生列表 输入考生姓名" , 插入文本框. 接着插入一个 3×4 的表格 b. 在表格 b 中, 第一行第一列内单元格输入文字 "考生姓名" , 第一行第二列单元格内输入文字"分数",第一行第三列单元格内输入文字"补考设置",第一行第 四列单元格内输入文字"补考成绩".合并第二行四个单元格,输入文字"暂无此学员信息".在表 格

b 后插入表单 b,表单 b 内插入文字,文本框.最后设置控件属性.代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.创建过程 创建过程 check (),检查跳转页面是否输入,是否为数字类型.代码如下:

<script Language="vbscript"> '采用 vbscript 语言,创建过程 check() sub check() c= '赋值变量 c 为表单值 '如果 c 不为空,则检测 c 是否

数字则弹出"警示"对话框,退出函数.否则结束 if 语 句.为空则弹出"警示"对话框,退出函数 if c<>" " then if not IsNumeric(c) then msgbox " 页数只能输入数字" () exit sub el end if el msgbox"请输入想要转到页数" () exit sub end if () end sub </script>

2.查询学生信息 查询数据库内学生成绩信息,试卷信息,并输出试卷试题信息.代码如下:

<%flag1=0 '赋值变量 flag2=0 repor

辣大叔酱板鸭

tid=trim(request("reportid")) t rs=Object("t") sqls="lect * from examination " 'sql 语言的查询语句 t rss=e(sqls) '执行查询语句 '如果记录为空,则 titles 文字变为"暂无成绩信息",flag1 赋值为 1 if then titles="暂无成绩信息" flag1=1 el '如果记录为空,即 reportid 为空,则 reportid 赋值为 examinationid,flag2 赋值为 1 if reportid=" " then

54

ASP+SQL Server 典型网站建设案例

reportid=rss("examinationid") flag2=1 el '如果 reportid 不为空,reportid 值不变 reportid=reportid end if t rs1=e("lect * from examination where examinationid="&reportid&" ") '执行查询语句 title="第 "&rs1("examinationid")&" 期考试统计" if flag2=1 then title=title&"(最新一期)"//如果 flage2 值为 1,则 title 文字显示 "(最新一期)" t rs2=e("lect * from test where examinationid="&rs1("examinationid")&" ") 执行 查询语句 titles=title&"

(判断题数"&rs2("rightorwrongid")&"题/"&rs2("rightorwrongscore")&"分,选择题数 "&rs2("lectid")&"题/"&rs2("lectscore")&"分,填空题数"&rs2("fillingid")&"题/"&rs2("fillingscore")&"分)

" zf=rs2("rightorwrongid")*rs2("rightorwrongscore")+rs2("lectid")*rs2("lectscore")+rs2("fillingid")*rs 2("fillingscore") '算出总分数 end if %>

3.在下拉列表内循环插入试卷期数 在下拉列表内循环插入试卷期数,方便以后查询调用.代码如下:

<% t rs3=e("lect distinct examinationid from examination order by examinationid desc") '执 行查询语句 while not 'while 循环语句直到记录不为空%> <% xt '指针下移 wend%>    <%=titles%>

4.显示并查询考生信息 定义表单,在表格内循环插入考生信息.并定义变量 keyword,在文本框 keyword 内输入关键字, 单击"查询"按钮查询考生信息.代码如下:

<%'表单属性%> <%keyword=trim(request("keyword")) '限定查询条件是否为所有考生 if keyword="

eywords="所有考生" el keywords=keyword end if %>

以下为姓名为 <%=keywords%> 的考生列表  输入考生姓名 
第 1 章 在线考试系统

55

style="width: 60; height: 22; border-style: solid; border-width: 1px; background-color: #FFFFFF"> … <% if flag1=1 then '如果 flag1 不为 1,则执行查询语句,查询记录以 10 个记录为 1 页分页显示 el sql="lect student.*,examination.* from student,examination where tname like '%"&keyword&"%' and tnumber=tnumber and examination. examinationid= "&rs1("examinationid")&" order by tnumber desc" sql,conn,3,1,1 ze=10 if not ( and ) then Page = cint(tring("Page")) If Page < 1 Then Page = 1 If Page > unt Then Page = unt showpages rs,Page %> <% el%>

<% end if%> <% Sub showpages( rs,Page ) tePage = Page for i=0 to ze-1 j=j+1 if j mod 2 =0 then bg="#EFEFF7" el bg="#ffffff" end if if rs("score")>=cint(zf*6/10) then '如果分数大于 60, 则为"不需要" 考试, 否则为"需 要"考试 fen=""&rs("score")&"分" bk="不需要" bfen="不需要" el fen=""&rs("score")&"分" bk="批准补考" '单击 "批 准补考"字样,调用页面 test_,批准补考 '判断是否批准补考.如果未批准补考,检测字段 make

辣大叔酱板鸭

up 是否为 0 判断是否还为补考,如果补考依据成绩是 否及格,不及格显示成绩为红色 bfen="需要补考" if rs("pass")=True then bk="已批准补考" if rs("makeup")=0 then bfen="还未补考" el if rs("makeup")>=cint(zf*6/10) then bfen=""&rs("makeup")&"分"

56

ASP+SQL Server 典型网站建设案例

el bfen=""&rs("makeup")&"分" end if end if end if

end if %> > <% xt If Then Exit For Next%> <% End Sub end if %>

5.翻页程序 定义表单,单击"第一页","上一页","下一页","最后一页"等链接,实现页面跳转翻 页功能.代码如下:

您将要参加的第 <%=ssion("qi")%> 期考试情况如下: …

本 期 考 试 <%=pd%> 道 判 断 题 , <%=xz%> 道选择题,<%=tk%> 道填空题,总分 <%=zfen%>



1.16.2 在线考试设计页面

在线考试页面是动态页面,在考试预备页面,单击"进入考试= = =>"链接,进入在线考试页面, 如图 1.48 所示.

图 1.48

在线



ASP+SQL Server 典型网站建设案例

创建页面,首先插入表单,在表单内插入表格 a,然后在表格 a 内输入页面标题内容,第一行输入 文字"第 期考试",第二行输入文字"(本期考试 道判断题, 道选择题, 道填空题,总分 分)", 第三行输入文字"考生姓名:性别:班级:学号:",在相应位置插入代码,显示数据库内相应信息. 随后插入 4×1 的表格 b,在表格 b 后插入 5×1 的表格 c,表格 c 后插入 4×1 的表格 d.将按钮移至表 格 a 内. 在表格 b 内第一行单元格内输入文字"一,判断题(共 道,每题 分)",第二行单元格内输入 文字"本次考无判断题",第三行单元格内输入文字"题库里暂无判断题",第四行单元格内输入文 字",",插入下拉框. 在表格 c 内第一行单元格内输入文字"一,选择题(共 道,每题 分)",第二行单元格内输入 文字"本次考无选择题",第三行单元格内输入文字"题库里暂无选择题",第四行单元格内插入 4 个单选按钮. 在表格 d 内第一行单元格内输入文字"一,填空题(共 道,每题 分)",第二行单元格内输入 文字"本次考无填空题",第三行单元格内输入文字"题库里暂无填空题",第四行单元格内输入文 字" ,您的答案:",插入文本框. 最后设置文字,下拉框,表单,表格和单选按钮等所有控件属性.页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.查询试卷信息 查询表 test,查询试卷题型及题量信息.判断考生是否参加过补考.代码如下:

<% '采用 vbscript 语言,将 flagpd,flagxz,flagtk 3 个变量赋值为 0 flagpd=0 flagxz=0 flagtk=0 randomize '初始化随机数生成器 t rss=e("lect * from examination where studentnumber="&ssion("number")&" and (pass=0 or makeup<>0) order by examinationid desc ") '执行查询语句查询表 examination,查询补考人员 是否参加补考 '如果记录为空,则变量 qi 值为 1.否则变量 qi 等于 examinationid 值+1 if then qi=1 el qi=rss("examinationid")+1 end if t rss=e("lect * from examination where studentnumber="&ssion("number")&" and (pass=1 and makeup=0) order

by

辣大叔酱板鸭

examinationid desc ") '执行查询语句查询表 examination,是否存在补考用户 if not then '如果记录不为空,则变量 qi 等于 examinationid qi=rss("examinationid") end if '执行查询语句,查询表 test t rss=e("lect * from test order by examinationid desc") if then '如果记录为空,则弹出"警示"对话框,页面返回.否则为变量赋值 %> <script language=javascript>

第 1 章 在线考试系统

63

alert("请先出题!再进行考试!"); (); </script> <% el pd=rss("rightorwrongid") '判断题数量变量赋值 pds=rss("rightorwrongscore") '判断题每题分数变量赋值 xz=r

"lectid"

辣大叔酱板鸭

) '选择题数量变量赋值 xzs=rss("lectscore") '选择题每题分数变量赋值 tk=rss("fillingid") '填空题数量变量赋值 tks=rss("fillingscore") '填空题每题分数变量赋值 ssion("ttime")=rss("testdata") 'ssion 变量 ttime 赋值 zf=pd*pds+xz*xzs+tk*tks '总分数变量赋值 testid=rss("examinationid") '试卷编号变量赋值 t rs=e("lect * from rightorwrong order by rightorwrongid desc") '执行查询语句, 查询表 rightorwrong maxtype1=rs("rightorwrongid") '变量 maxtype1 赋值 '执行查询语句 t rs=e("lect * from lecting order by lectid desc") maxtype2=rs("lectid") '变量 maxtype2 赋值 t rs=e("lect * from filling order by fillingid desc") '执行查询语句 maxtype3=rs("fillingid") '变量 maxtype3 赋值 'sql 语言的查询语句,查询表 exa



什么叫股权激励-大香蕉一人在线

ASP+SQL Server典型网站建设案例

本文发布于:2023-11-19 14:23:00,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1700374981220012.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:ASP+SQL Server典型网站建设案例.doc

本文 PDF 下载地址:ASP+SQL Server典型网站建设案例.pdf

标签:建设网站
<%'表格 b 属性%> … <%'表单属性%>
<%'表格 c 属性%> … <%'用户名文本框属性%> … <%'密码文本框属性%> … <%' "提交","重置"按钮属性%> … <%'单击"新学生注册"进入新学生注册页面%> … <%'单击"后台管理程序入口"进入后 台管理程序页面%> … <%'图片位置%> …

1.6

用户注册页面

用户注册主要由两个页面构成:顶部图片页面()和注册页面().用户注册 页面主要用于用户完成用户注册.注册成功后,用户才可以进入在线考试系统.

第 1 章 在线考试系统

23

1.6.1 顶部图片页面

顶部图片页面()与 top 的目的及做法类似,以后可以通过 命令直接调用,如图 1.28 所示.

图 1.28

顶部图片页面

页面代码与 页面基本类似,只需将 src=" images/"改为 src=" images/".页面代码 不再重复.

1.6.2 用户注册页面

用户注册页面()是一个静态页面.它的主要功能是注册新的学生用户,并对数据库进

行更新,如图 1.29 所示.

图 1.29

用户注册页面

创建新

1×1 的表格 a,在表格 a 内加入一个表单,给表单命名.在表单 内插入一个 6×3 的表格 b,在单元格内添加文本对话框及文本,将按钮控件移至第二列单元格内.设 置表格,文本对话框及按钮各项属性. 1.用户注册页面 ASP 代码 用户注册页面 ASP 判断用户名是否输入完全;判断加入的学生是否已经注册过,避免重复注册;

24

ASP+SQL Server 典型网站建设案例

将新学生注册信息存入数据库中,提示注册成功.代码如下:

<%'调用 页面连接数据库%>

使用 JavaScript 语言,创建过程 check(),判断文本是否输入完全.代码如下:

<script language=javascript> function check() { if (==" ") //判断学生姓名文本框是否为空 {alert("请输入学生姓名!"); //弹出"警示"对话框 (); //焦点集中在学生姓名文本框 return fal; //避免提交失败,防止 IE 重载该页面 } if (==" ") //判断密码文本框是否为空 {alert("请输入密码!"); //弹出"警示"对话框 (); //焦点集中在密码文本框 return fal; //避免提交失败,防止 IE 重载该页面 } if (==" ") //判断班级文本框是否为空 {alert("请输入班级!"); //弹出"警示"对话框 (); //焦点集中在班级文本框 return fal; //避免提交失败,防止 IE 重载该页面 } if (==" ") //判断学号文本框是否为空 {alert("请输入学号!"); //弹出"警示"对话框 (); //焦点集中在学号文本框 return fal; //避免提交失败,防止 IE 重载该页面 } //获取引藏域名为 ctype 的值,直接给 ctype 赋值为 add ="add"; (); //提交 form1 表单 } </script>

使用 VBScript 语言判断注册学生学号是否存在.如果存在,则使用 JavaScript 语言,弹出"警示" 对话框提示存在此学生.代码如下:

'判断提交变量 ctype 的值,如果 ctype 的值为 add,查询此学号的学生是否存在 if trim(request("ctype"))="add" then sqlfind="lect * from student where studentnumber=' "&trim(request("number"))&" ' " 'sql 查询语句查找 此学号的学生是否存在 t rsfind=e(sqlfind) '执行 sql 语句 if not then '如果此学号存在,则弹出"警示"对话框提示存在此学生 '否则将学生信息存入数据库 studen

辣大叔酱板鸭

t 表中 %> <script language=javascript> //使用 javascript 语言 alert("已有此学员,请重新录入!"); </script>

第 1 章 在线考试系统

25

使用 VBScript 语言,将新的学生信息存入数据库 student 表中.执行成功,使用 JavaScript 语言弹 出"警示"对话框,进入用户登录

p 页面.代码如下:

el sqlin="inrt into student (studentname,studentpassword,x

number) values(' "&trim (request("student"))&" (); //焦点集中在 id 文本框 return fal;} // 避免提交失败,防止 IE 重载该页面 if (docume

lue==" ") //如果 pwd 文本框为空 {alert ("请输入密码!"); //弹出"警示"对话框 (); //焦点集中在 pwd 文本框 return fal;} // 避免提交失败,防止 IE 重载该页面 ="types"; // 获取引藏域名为 ctype 的值,直接给 ctype 赋值为 add

第 1 章 在线考试系统

(); } </script> //提交 form1 表单

27

使用 VBScript 语言判断填写是否正确.若填写正确,则将用户信息赋值给 ssion 变量,进入管理 员界面首页 页面.代码如下:

if request("ctype")="types" then sqlfind="lect * from admin where admin=' "&trim(request("id"))&" ' and adminpassword=' "&trim (request("pwd"))&" ' " 'sql 语言的查询语句查询表 admin t rs=e (sqlfind) '执行 sql 语句 '如果数据库中不存在该用户及密码,则弹出"警示"对话框,浏览器后退.如果存在,则保存登录用户 admin,进入 页面 if then %> <script language=javascript> //使用 javascript 语言 alert("错误:无此管理员,或管理员密码错误!"); (); //浏览器后退 </script> <% el ssion("adminid")=rs("admin") '保存登录用户 admin %> <script language=javascript> te(""); '进入管理员界面首页 页面 </script> <%end if el %>

2.管理员登录页面正文代码 页面正文代码勾画页面表格,表单,文本框,文字和按钮等控件属性.页面代码如下:


辣大叔酱板鸭

tml> … <%'表单属性设置%>
<%'按钮属性设置%> …

28

… <%end if %>

ASP+SQL Server 典型网站建设案例

1.8

管理员界面首页

管理员界面首页由 3 个页面组成:欢迎页面(),检验用户名页面()和管 理界面首页().通过管理界面首页实现在线考试系统后台试题,题库,学生和成绩等管理.

1.8.1 检验用户名页面

检验用户名页面()用于检测管理员用户名是否为空.同时避免重复并节约代码.将检 查用户名页面制作成为模块,以后通过命令直接调用.页面代码如下:

<% '采用 vbscript 语言 if trim(ssion("adminid"))=" " then%>
ript language=javascript> te(""); </script> <%end if %> '如果 ssion 变量的 adminid 值为空,则进入管理员登录页面 //

.2 欢迎页面

欢迎页面()用于在系统进入管理员界面首页时,先是在右侧嵌入式框架内插入文字 或图片.此处可以根据个人喜好及风格等随意制作,本系统中采用简单文本样式.首先创建新页面, 在页面中插入一个 1×1 的表格,设定表格属性.然后在表格内插入文字.欢迎页面如图 1.31 所示.

图 1.31

欢迎页面

页面代码如下:



第 1 章 在线考试系统



29

新学生注册后台管理程序入口
<%'表格属性%> <%'插入的文字%> …

1.8.3 管理界面首页

管理界面首页()后台管理程序全部在此页面上运行.它的页面主要分为 3 部分:顶部 为系统图片,左侧为工具条,右侧为嵌入式框架,页面如图 1.32 所示.

图 1.32

管理界面首页

创建新页面,首先在页面中插入一个 1×1 的表格 a,在表格 a 内插入所选图片.然后在表格 a 下 方插入 1×2 的表格 b,在表格 b 第一列单元格内插入 10×1 的表格 c,在表格 c 中插入文字.在表格 b 第二列单元格内插入嵌入式框架.在嵌入式框架内单击"设置初始页面"链接,选择欢迎页面 ()作为初始页面.最后设置页面内各控件及文字属性.页面代码如下:

<%'调用 检测登录用户是否为空%> …
欢迎进入在线考试后台管理系统
<%'表格 a 属性%> <%'图片路径及属性%> …
<%'表格 b 属性%> …

30

ASP+SQL Server 典型网站建设案例

<%'表格 c 属性%>

"#111111" width="110" id="AutoNumber2">

表格 c 内显示管理菜单.单击菜单中相应字样,在右侧嵌入式框架内显示相应页面.代码如下:

<%'文字%> … … …

31

1.9

判断题管理界面

判断题管理界面显示当前试题库中的所有判断题,并可以对判断题进行查找,增加,删除或修改 等操作.共分为 4 个页面:判断题管理页面(type_),判断题增加页面(type_1_),判断 题删除页面(type_1_),判断题修改页面(type_1_).

1.9.1 判断题管理页面

判断题管理页面(type_)是一个动态页面,主要用于显示数据库中所有判断题,并对其进行 查询.页面如图 1.33 所示.

图 1.33

判断题管理页面

创建新页面,首先加入表头文字,插入一个 5×1 的表格.第一行是表单 a,在表单 a 内插入文字, 同时插入一个文本框和一个按钮.将第二,三,四行同时选中,单击鼠标右键,选择"拆分单元格" 命令,单元格被拆分成 5 列.然后将第二行 5 列单元格同时全部选中,单击鼠标右键,选择"合并单 元格"命令.

辣大叔酱板鸭

在二,三,四行表格内插入文字.最后将第五行表格内插入表单 b,在表单 b 中插入文字, 一个文本框,一个按钮.设置文字,文本框,表单和表格等控件属性. 判断题管理页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.判断题管理页面ASP代码 判断题管理页面通过 ASP 代码判断页数是否为数字.代码如下:

<script Language="vbscript"> sub check() //使用 vbsc

ript 语言,创建 check()函数

32

c= if c<>" " then

ASP+SQL Server 典型网站建设案例

//将 form1 表单内文本框 page 的值赋于变量 c //如果 c 不等于空,则继续检

否则弹出 警示框,退出函数.等于空则弹出警示框,退出函数 //如果 c 不是数字,则弹出警示框,退出函数 //弹出"警示"对话框 //退出函数 check()

if not IsNumeric(c) then msgbox " 页数只能输入数字" () exit sub end if el msgbox"请输入想要转到页数" () exit sub end if () end sub </script>

//弹出警示框 //退出函数 check() //提交 form1 表单

2.判断题管理页面正文代码 页面正文代码勾画页面.代码如下:

判断题 题库管理
<%'表头"判断题 题库管理" 文字属性%> 添加新题

<%'文字"添加新题"的超级链接%>

后台管理

<%'单击"判断题管理"字样,在右侧嵌入式框架内显示判断题管理页面(type_)%> 判断题管理
<%'单击"选择题管理"字样,在右侧嵌入式框架内显示选择题管理页面(type_)%> 选择题管理

辣大叔酱板鸭ww



<%'单击"填空题管理"字样,在右侧嵌入式框架内显示填空题管理页面(type_)%>
get="right">填空题管理
<%'单击"试卷管理"字样,在右侧嵌入式框架内显示试卷管理页面()%> 试卷  管理
<%'单击"成绩管理"字样,在右侧嵌入式框架内显示成绩管理页面() %> 成绩  管理
<%'单击"学生管理"字样,在右侧嵌入式框架内显示学生管理页面(student_)%> 学生  管理 <%'单击"管理员信息"字样,在右侧嵌入式框架内显示管理员信息页面()%> 管理员信息
<%'单击"退出"字样,整个页面显示管理员登录页面()%> 退出 <%'嵌入式框架属性%>

第 1 章 在线考试系统

<%'表格属性%>

创建表单,文本框和按钮等控件属性,通过 VBScript 实现查询题目.代码如下:


辣大叔酱板鸭

action=" "> <%'表单 a 的属性%> <% '使用 vbscript 语言, 如果文本框 keyword 的值为空, 则默认为选择所有题目, 如果不为空, keyword 则 文本框内容为查询条件 keyword=trim(request("keyword")) if keyword=" " then keywords="所有题目" el keywords=keyword end if %> <%'文本框 keyword 的属性及"查找"按钮属性%> <% '使用 vbscript 语言,查询判断题库中符合查询条件的数据 t rs=Object("t") sql="lect * from rightorwrong where question like '%"&keyword&"%' order by rightorwrongid desc"

第 1 章 在线考试系统

'sql 语言的查询语句 '打开判断题库 '每 10 条记录分页

33

sql,conn,3,1,1 ze=10 %>

创建表格循环插入查询数据结果记录,且按照单双数表格分色显示记录.代码如下:

… <% '使用 vbscript 语言,如果数据库记录不为空,则以 10 条记录为一页分页显示查询记录.如果记录为空 则显示"没有你查的试题信息" if not ( and ) then Page = cint(tring("Page")) If Page < 1 Then Page = 1 If Page > unt Then Page = unt showpages rs,Page %> <% el%> <% end if%> <% Sub showpages( rs,Page ) tePage = Page for i=0 to ze-1 'sql 语言的循环语句 j=j+1 '如果行数能被 2 整除,则背景颜色为"#EFEFF7",否则为"#ffffff" if j mod 2 =0 then bg="#EFEFF7" el

end if %> > <% xt '指针移到下一个记录

34

ASP+SQL Server 典型网站建设案例

If Then

辣大叔酱板鸭

Exit For '如果记录结束,则退出 for 循环语句 Next%> <%End Sub%> <%xt '指针下移一个记录 wend%> …

1.12.2 试题增加页面

试题增加页面()与试题管理页面布局,控件基本类似,在此不再赘述,页面如图 1.43 所示.

<%'调用页面 连接数据库%> <%'调用页面 检测用户名是否为空%>

1.创建过程 创建过程 btnadd(),如果单击"增加"按钮,判断提交各个文本框是否为空,为空则弹出"警示"对 话框,焦点集中在空文本框.创建过程 btngiveup (),页面跳转至试题管理页面().代码如下:

第 1 章 在线考试系统

47

图 1.43

试题增加页面

<script language=javascript> //采用 javascript 语言 function btnadd() { if ((!=" ") && (==" ")) {alert("数据不全,请重新输入!"); (); return fal;} if ((!=" ") && (==" ")) {alert("数据不全,请重新输入!"); (); return fal;} if ((!=" ") && (==" ")) {alert("数据不全,请重新输入!"); (); return fal;} ="add"; //将表单变量 ctype 赋值为 add (); //表单提交 } function btngiveup() { var now=new Date(); //变量 now 赋值为当前日期 te("?time="+e()) //跳转至页面 } </script>

2.增加试卷记录 查询文本框内容是否完全,不完全则弹出"警示"对话框;文本框内容完全,则在数据库内插入 最近的试卷记录.代码如下:

<% '采用 vbscript 语言

t rs=e("lect * from test order by examinationid desc") '执行查询语句 flag=0 '变量 flag 赋值为 0 if request("ctype")="add" then '如果变量 ctype 的值为 add '如果文本框 tk 的值为空或者文本框 xz 的值为空或者文本框 pd 的值为空,则弹出"警示"对话框,页面 返回

48

ASP+SQL Server 典型网站建设案例

if trim(request("tk"))=" " or trim(request("xz"))=" " or trim(request("pd"))=" " th

language=javascript> alert("数据不全,请重新录入"); (); </script> <% El //否则在表 test 内插入记录 sqlin="inrt into test (lectid,lectscore,rightorwrongid,rightorwrongscore,fillingid,fillingscore,testdata,tupdata) values("&trim(request("xz"))&","&trim(request("xzs"))&","&trim(request("pd"))&","&trim(request("pds"))&","&trim(r equest("tk"))&","&trim(request("tks"))&")" 'sql 语言的插入语句 t rss=e(sqlin) '执行插入语句 %> <script language=javascript> //采用 javascript 语言,弹出"警示"对话框,变量 now 赋值为当前日期,页面跳转至 页面 alert("试题类录入成功!"); var now=new Date(); te("?time="+e()); </script> <% end if end if %>

3.试题增加页面正文代码 页面正文代码勾画页面,代码如下:

… <%'表单属性%>
以下是按关键字 <%=keywords%> 的查询结 果        查找 题目
没有你查的试题信息

td>
<%=rs("rightorwrongid")%> <%=rs("question")%> <% if rs("answer")=true then '如果 answer 的值为 true 则显示"对"字样,否则显示"错"字样 d="对" el d="错" end if d %> ">编辑 ">删除

method="get"name=form1> <%'表单 b 属性%>

使用 VBScript 语言,显示分页中的上一页,下一页,最后一页等信息.实现页面跳转,代码如下:

ze&"条一页  " if Page=1 then "第一页 " end if If Page <> 1 Then "第一页 " "上 一页 " End If If Page <> unt Then "下一 页 " "最后一页 " End If if page= unt then "最后一页 " end if "总共有"&unt&"页, 目前是第"&page&"页" %> 转到 > name="keyword"> 页
<%'文本框及按钮属性%> …

1.9.2 判断题增加页面

判断题增加页面(type_1_)是动态页面,管理员(教师)用户增加判断题库试题.页面如 图 1.34 所示. 创建新页面,首先插入标题,然后加入一个表单,在表单内插入一个 4×1 的表格.第一行表格内 插入文字,第二,三行表格都选中,单击鼠标右键,选择"拆分单元格"命令,二,三行表格分为 3 列,在第二行 3 列内,插入相应的表头,第二行第二列内插入文本框,第三列插入下拉框.将按钮移 至第四行表格内.最后设置文字,文本框,下拉框和表格等控件属性.

第 1 章 在线考试系统

35

判断题增加页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测用户名是否为空%> <% '采用 vbscript 语言 sql="delete from rightorwrong where rightorwrongid="&trim(request("id")) 'sql 语言的删除语句 t rs=e(sql) '执行 sql 语句 %> <script language=javascript> //调用 javascript 语言 alert("试题删除成功!"); //

辣大叔酱板鸭

弹出"警示"对话框 var now=new Date(); //将 now 变量赋值为当前日期 te("type_?time="+e());//当前窗口返回 type_ </script>

1.9.4 判断题修改页面

判断题修改页面(type_1_)是动态页面,主要用于对选定判断题目进行修改.页面的控件 与判断题增加页面完全一致,只有文本框及下拉框的名称不相同.页面如图 1.35 所示.

图 1.35

判断题修改页面

页面代码如下所示:

<%'调用 函数连接数据库%> <script language=javascript> //采用 javascript 语言,创建 check 函数

1.判断题修改页面 ASP 代码 判断题修改页面通过 ASP 代码判断题库内是否已经存在插入试题.如果存在则弹出"警示"对话 框,不存在则修改数据库数据.操作成功或失败弹出"警示"对话框,提示操作成功或者失败.代码 如下:

38

ASP+SQL Server 典型网站建设案例

function check() { //如果表单 form1 内表格 t1 的值为空,则弹出"警示"对话框,焦点集中在文本框 t1 if (==" ") {alert("请录入题干!"); (); return fal;} ="types"; //表单 form1 的引藏域名 ctype 的值为 types (); //提交 form1 表单 } </script> <%sql="lect * from rightorwrong where rightorwrongid="&trim(request("id")) 'sql 语言的查询语句 t rs=e (sql) '执行查询语句 '如果引藏域名 ctype 的值为 types,则查询表 rightorwrong 内是否存在修改后的判断题目及答案,如果存在, 则弹出"警示"对话框,页面返回.如果不存在,则存入数据库中 if request("ctype")="types" then sqlfind="lect * from rightorwrong where question=' "&trim(request("t1"))&" ' and answer=' "&request ("cate")&" ' and rightorwrongid<>"&request("id") 'sql 语言的查询语句 t rss=e(sqlfind) '执行语句 if not then '如果记录不存在 %> <script language=j

avascript> //采用 javascript 语言 alert("已有此试题!"); //弹出"警示"对话框 (); //页面返回 </script> <% el '采用 vbscript 语言 sqledit="update rightorwrong t question=' "&trim(request("t1")) &" rwrong 变为 lecting,增加 4 个选择项的内容.页面如图 1.37 所示.

图 1.37

选择题增加页面

1.10.3 选择题删除页面

选择题删除页面(type_2_)控件,代码与判断题删除页面基本类似,在此不再赘述.注意 选择的数据表由 rightorwrong 变为 lecting.

1.10.4 选择题修改页面

选择题修改页面(type

在此不再赘述.注意 选择的数据表由 rightorwrong 变为 lecting,增加 4 个选择项的内容.页面如图 1.38 所示.

图 1.38

选择题修改页面

第 1 章 在线考试系统

41

1.11

填空题管理界面

填空题管理与判断题管理基本相同.用于显示当前试题库中的所有填空题,并可以对填空题进行 查找,增加,删除或修改等操作.共分为 4 个页面:填空题管理页面(type_),填空题增加页面 (type_3_),填空题删除页面(type_3_),填空题修改页面(type_3_).

1.11.1 填空题管理页面

填空题管理页面(type_)控件,代码与判断题管理页面基本类似,在此不再赘述.但要注意 选择的数据表由 rightorwrong 变为 filling.页面如图 1.39 所示.

图 1.39

填空题管理页面

1.11.2 填空题增加页面

填空题增加页面(type_3_)控件,代码与判断题增加页面基本类似,在此不再赘述.注意 选择的数据表由 rightorwrong 变为 filling.页面如图 1.40 所示.

图 1.40

填空题增加页面

42

ASP+SQL Server 典型网站建设案例

1.11.3 填空题删除页面

填空题删除页面(type_3_)控件,代码与判断题删除页面基本类似,在此不再赘述.注意 选择的数据表由 rightorwrong 变为 filling.

1.11.4 填空题修改页面

填空题修改页面(type_3_)控件,代码与判断题修改页面基本类似,在此不再赘述.注意 选择的数据表由 rightorwrong 变为 filling.页面如图 1.41 所示.

图 1.41

填空题修改页面

1.12

试题管理界面

试题管理界面主要由试题管理页面()和试题增加页面()两个页面组成,完成 对试卷的创建和修改.

1.12.1 试题管理页面

试题管理页面()用于展示试卷信息,修改管理考试试卷信息,页面如图 1.42 所示. 创建页面,首先输入文字作为页面标题,插入表单,表单内插入一个 1×8 的表格 a,表单外加入 1×1 的表格 b.在表格 a 内,第一行输入文字"考卷设置(最新一期的)".将二,三,四,五,六 行

辣大叔酱板鸭

同时选中,单击鼠标右键,选择"拆分单元格"命令,将单元格分为四列.第二行并列四个单元格 内分别输入"编号","数目","分数","修改"文字.第三行四列单元格合并,输入文字"暂 无考卷设置信息".第四行第一列单元格内输入文字"判断题",第二列单元格内添加文本框名为 pd, 第二列添加文本框名为 pds,第三列添加复选框名为 C1.类似第五行第一列单元格内输入文字"选择 题",

第二列单元格内添加文本框名为 xz,第二列添加文本框名为 xzs,第三列添加复选框名为 C2. 第六行第一列单元格内输入文字"填空题",第二列单元格内添加文本框名为 tk,第二列添加文本框

第 1 章 在线考试系统

43

名为 tks,第三列添加复选框名为 C3.将按钮移至第八行单元格

".复 制"增加"按钮,更名为"修改".在表格 b 中输入图标,文字"◆ 第 期(判断题 道/ 分,选择题 道/ 分,填空题 道/ 分)".

图 1.42

试卷管理页面

页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.创建过程 创建过程 btnadd(),如果单击"增加"按钮,页面跳转至试题增加页面().创建过程 btnedit (),判断修改后提交各个文本框是否为空.代码如下:

<script language=javascript> //采用 javascript 创建函数 btnadd(),btnedit() function btnadd() { te(""); //页面转至 页面 } function btnedit() { //如果表单内文本框值为空,则弹出"警示"对话框,焦点集中在文本框 pds if ((==" ") || (==" ") || (==" ")) {alert("你提交的为空记录!"); (); return fal;} if ((!=" " )&&(==" " )) {alert("数据不全!"); (); return fal;} if ((!=" " )&&(==" " )) {alert("数据不全!"); (); return fal;} if ((!=" " )&&(==" " )) {alert("数据不全!"); ();

44

ASP+SQL Server 典型网站建设案例

return fal;} docume

辣大叔酱板鸭

="edit"; (); } </script>

//表单 form1 的变量 ctype 赋值为 edit //表单 form1 提交

2.查询试卷记录 查询试卷记录,如果没有试卷,输出提示.如果存在试卷,输出最近一期试卷信息.代码如下:

<%flag=0 '采用 vbscript 语言,设变量值为 0 flags=0 sqlfind="lect * from test order by examinationid desc" 'sql 语言的查询语句 t rss=e(sqlfind) '执行查询语句 if then '如果记录为空,则 flag 变量赋值为 1,题目显示"暂无"字样 flag=1 title=" 暂无 " el '否则,执行查询语句,显示最近一期的期数 t rs=e("lect * from test order by examinationid desc") title="第 "&rs("examinationid")&" 期" end if

3.修改试卷记录 如果单击"修改"按钮,则查看选中的复选框,修改相应试卷试题信息.操作完毕,弹出"警示" 对话框提示.代码如下:

if trim(request("ctype"))="edit" then '如果变量 ctype 的值为 edit '如果复选框 c1 赋值为 on,变量 flags 赋值为 1,执

行修改语句,修改试卷判断题信息 if request("c1")="on" then flags=1 sqledit="update test t rightorwrongid="&trim(request("pd"))&", rightorwrongscore="&trim(request ("pds")) &" where examinationid="&rs("examinationid") t rdit=e(sqledit) end if '如果复选框 c2 赋值为 on,变量 flags 赋值为 1,执行修改语句,修改试卷选择题信息 i

st("c2")="on" then flags=1 sqledit="update test t lectid="&trim(request("xz"))&",lectscore="&trim(request("xzs"))&" where examinationid="&rs("examinationid") t rdit=e(sqledit) end if '如果复选框 c3 赋值为 on,变量 flags 赋值为 1,执行修改语句,修改试卷填空题信息 if request("c3")="on" then flags=1 sqledit="update test t fillingid="&trim(request("tk"))&",fillingscore="&trim(request("tks"))&" where examinationid="&rs("examinationid") t rdit=e(sqledit) end if if flags=1 then '如果变量 flags 为 1,则弹出"警示"对话框,页面跳转至 页面 %> <script language=javascript>

第 1 章 在线考试系统

alert ("修改成功!"); now=new Date(); te("?time="+e()); </script> <% el '否则弹出"警示"对话框%> <script language=javascript> alert ("请选择要修改项!"); </script> <% end if end if %>

45

4.试题管理页面正文代码 页面正文代码勾画页面,显示试卷信息.代码如下:

… <%'表单属性%> <%'表格 a 属性%> … <%if flag=1 then '如果试卷信息存在则显示试卷信息%> <%el%> <%'判断题题数文本框属性%> <%'判断题每题分数文本框属性%> <%'选 择题题数文本框属性%> <%'选择题每题分数文本框属性%>

46

ASP+SQL Server 典型网站建设案例

<%'填空题 题数文本框属性%> <%' 填空题每题分数文本框属性%> … <%end if %>
<%=title%> 考卷设置(最新一期的)
暂无考卷设置信息
判断题 > >
选择题 > >
填空题
辣大叔酱板鸭

>
"> >
<%if flag=0 then%> <%'按钮属性%> <%end if %>
… <%while not '循环输出每期试卷题型及分数信息%>
◆ 第 <%=rss("examinationid")%> 期 ( 判 断 题 <%=rss("rightorwrongid")%> 道 / <%=rss ("rightorwrongscore"

辣大叔酱板鸭

)%> 分 , 选 择 题 <%=rss("lectid")%> 道 / <%=rss("lectscore")%> 分 , 填 空 题 <%=rss("fillingid")%> 道/ <%=rss("fillingscore")%> 分)
<%'表格属性%> …

第 1 章 在线考试系统



49

<%'按钮属性%>
判断题
选择题
填空题
… <%while not '采用 vbscript 语言,while 循环语句直到 test 表记录不为空,插入试卷数据%>
◆ 第 <%=rs("examinationid")%> 期 ( 判 断 题 <%=rs("rightorwrongid")%> 道 / <%=rs

("rightorwrongscore")%> 分 , 选 择 题 <%=rs("lectid")%

辣大叔酱板鸭

> 道 / <%=rs("lectscore")%> 分 , 填 空 题 <%=rs("fillingid")%> 道/ <%=rs("fillingscore")%> 分)
<%=rs("studentname")%>各期考试统计

学生 基本资料==> 性别:<%=rs("x")%> 班号:<%=rs("class")%> 学号:<%=rs("stud

entnumber")%>

(参加过 <%=ci%> 期考试,最高 <%=hf%> 分,最 低 <%=lf%> 分, <%=bjg%> 次不及格)

第 <%=rs1("examinationid")%> 期 <%=fen%> <%=

辣大叔酱板鸭

bfen%>
<%'表单属性%> <%keyword=trim(request("keyword")) '限定查询条件是否为所有考生 if keyword=" " then keywords="所有考生" el keywords=keyword end if %> 查找其他考生  请输入考生姓名 
暂无此学员信息
"><%= rs("studentname")% > <%=fen%> <%=bk%> <%=bfen%>
&reportid=<%=reportid%> method="get" name= form1 > <% ze&"条一页  " if Page=1 then "第一页 " end if If Page <> 1 Then '如果页面不等于 1,则显示"第一页","上一页","下一页","最后一页"字样 "
&keyword&"&reportid="&reportid&"&Page=1>第一页
" "上一页 " end If If Page <> unt Then "
辣大叔酱板鸭

"&keyword&"&reportid="&reportid&"&Page=" & (Page+1) & ">下一页
" "最后一页 " end If if page= unt then "最后一页 "

第 1 章 在线考试系统

end if "总共有"&unt&"页, 目前是第"&page&"页"

57

%> 转到 > name="keyword"> name="reportid"> 页


1.14.2 批准考试页面

批准考试页面(test_),用于管理类用户批准考生补考.单击学生管理页面内"批准补考" 链接,进入批准考试页面,批准考生补考.页面代码如下:

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%> … <%t rs=e("update examination t pass=1 where studentnumber="&request("studentnumber")&" and examinationid="&request("reportid")&" ") '修改为批准考试%> <script language=javascript> var now=new Date(); te("?time="+e()); </script>

1.15

管理员信息页面

管理员信息页面()对管理员的密码进行修改,页面如图 1.46 所示. 创建页面,输入页面标题"系统管理",插入表单,在表单内插入一个 3×2 的表格,在第一行第 一列单元格内输入文字"账号",第二行第一列单元格输入文字"密码",第二列单元格添加文本框. 将第三行两列单元格选中,单击鼠标右键,选择"合并单元格"命令,将按钮移至第三行单元格内. 设置文字,表格,表单,文本框和按钮等控件属性.页面代码如下:

<%'

调用 页面连接数据库%> <%'调用 页面检测登录用户名%> <%'采用 vbscript 语言,如果 ssion 变量 adminid 为空,则整个页面跳转至 页面 if ssion("adminid")=" " then

58

ASP+SQL Server 典型网站建设案例

%> <script language=javascript> te(""); </script> <% end if %>

图 1.46

试题增加页面

1.创建过程检查密码是否输入 创建过程函数 check (),检查密码是否输入.代码如下:

<script language=javascript> //采用 javascript 语言,创建函数 check() function check() {

d 为空,则弹出警示框,焦点集中在文本 pwd if (==" ") {alert("请输入密码!"); (); return fal; } ="edit"; //表单 form1 的变量 ctype 赋值为 edit (); //提交表单 } </script>

2.修改管理员密码 修改数据库中管理员密码,操作成功则弹出"警示"对话框.代码如下:

<% t rs=e("lect * from admin where admin="&ssion("adminid")) '执行插叙语句 '如果变量 ctype 的值为 edit,执行修改语句,将修改后的密码,保存在数据库中,弹出警示框,跳转至页面 if request("ctype")="edit" then t rdit=e ("update admin t admin=' "&trim(request("t1"))&" 链接, 进入在线考试页面,页面如图 1.47 所示. 创建页面,首先在页面内创建一个 1×1 的表格 a.然后在表格 a 内插入一个 6×1 的表格 b.表格 b 的第一行单元格内输入文字",您好!",文字居中.在","前,代码样式下,添加代码 "<%=ssion("student")%>",显示用户姓名.第二行单元格内输入文字"您将要参加的第 期考试情 况如下: , " 文字居中. "期" 在 字前, 代码样式下, 添加代码 "<%=ssion("qi")%>" ,

60

ASP+SQL Server 典型网站建设案例

显示考试期次. 第三行单元格内输入文字 "本期考试 道判断题, 道选择题,

字居中.在相应位置前,插入代码,显示每种考题的数量,分数及总分数.第四行单元格内输入文 字"进入考试= = =>",文字居右,设置超级链接,单击它进入在线考试页面().设置页面内 表格,文字其余属性.页面代码如下:

图 1.47



考试预备页面

<%'调用 页面连接数据库%> <%'调用 页面检测登录用户名%>

1.查询试卷信息 查询表 test,查询试卷题型及题量信息.代码如下:

<% '采用 vbscript 语言 t=125 '设定超时时间为 125 分钟 flag=0 '将变量 flag 赋值为 0 '执行查询语句查询表 test,并以 examinationid 字段降序排列 t rs=e("lect * from test order by examinationid desc ") if then '如果没有记录 flag=1 '变量 flag 赋值为 1 "

=========================== ===========================

" '输出文字"暂无考试" ssion("qi")=0 '变量 ssion("qi")赋值为 0 pd=0 '判断题数量变量赋值为 0 pds=0 '判断题每题分数变量赋值为 0 xz=0 '选择题数量变量赋值为 0 xzs=0 '选择题每题分数变量赋值为 0 tk=0 '填空题数量变量赋值为 0 tks=0 '填空题每题分数变量赋值为 0 zfen=pd*pds+xz*xzs+tk*tks '总分数变量赋值 el '否则 '执行查询语句查询表 examination,并以 examinationid 字段降序排列 t rss=e("lect * from examination order by examinationid desc ") '如果没有记录,变量 ssion("qi")赋值为 1.否则赋值为最大的 examinationid 字段值加 1 if then ssion("qi")=1 el ssion("qi")=rss("examinationid")+1 end if

暂无考试

第 1 章 在线考试系统

pd=rs("rightorwrongid") pds=rs("rightorwrongscore") xz=rs("lectid") xzs=rs("lectscore") tk=rs("fillingid") tks=rs("fillingscore") zfen=pd*pds+xz*xzs+tk*tks end if %> '判断题数量变量赋值 '判断题每题分数变量赋值 '选择题数量变量赋值 '选择题每题分数变量 '填空题数量变量赋值 '填空题每题分数变量赋值 '总分数变量赋值

61

2.考试预备页面正文代码 页面正文代码勾画页面,显示考生姓名及本期试卷信息.代码如下:


> …

<%=ssion("student")%>,您好!

进入考试===>
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|