当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP开发一个在线考试程序(六)

ASP
收集整理的ASP的常用内置函数
高手推荐的比较有用的ASP函数集合
ASP中JavaScript处理复杂表单的生成与验证
asp下tag的实现,简单介绍与部分代码
在ASP中用组件检测当前网卡地址的代码
asp中COM组件中如何连接数据库的代码
用ASP创建MDaemon用户的代码
ASP使用FSO读取模板的代码
ASP开发中可能遇到的错误信息中文说明大全(整理收集)
添加超级用户的.asp代码[蓝屏的原创,凯文改进,Ms未公布的漏洞]
全面优化ASP应用程序的性能的方法
实现ASP程序执行时间统计类的代码
ASP中利用execute实现动态包含文件的方法
asp中向文本框输出数据原样式的函数
ADODB.Stream组件Charset属性值集合
关于ASP代码的加密的几个方法
支持权重的无组件ASP广告显示代码
ASP下实现自动采集程序及入库的代码
asp读取远程文件并保存到本地代码
为什么ASP中执行动态SQL总报错误信息?提示语句语法错误

用ASP开发一个在线考试程序(六)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 228 ::
收藏到网摘: n/a

  测验代码
  Exam.asp 提供一系列的题目和以单选按钮为格式的选项。为了使测验更具挑战性,还要有时间限制。我设置了一个装
载时自动启动的时钟,将其时间设为20秒。剩余的时间在屏幕底部的状态窗口中显示。时间因素同题目个数一样可以改
变。为了在每次会员想要参加考试时,都从数据库中选择不同的题目,我使用了随机函数。在数据库中,题目的个数固定为
10个,每次会员回答5个问题。所有的题目都一起显示出来,然后开始计时。以下代码是计时器的函数:
< script language="JavaScript" >
var ck=0;
var tf=0;
var timeUp=0;
var timeLeft=0;
var tcount=0;
TimerFunc();
function TimerFunc() {
tf=window.setTimeout("TimerFunc();",1000);
tcount++;
timeLeft=20 - tcount;
window.status = timeLeft + " Seconds remaining";
}
< /script >
  要注意,没有时间限制的测验是没有乐趣的。
这页的查询是这样的:
id = Request.QueryString ("section")
session("id") = id
sql_tblname = "select tbl_name from paper where id="&id
Set RS_tblname = Application("Conn").Execute(sql_tblname)
subject= RS_tblname(0)
MyString = Split(subject,"tbl",-1,1)
  查询字符串存储在一个 session("id")中, 按顺序启动查询。这个SQL声明的目的是从试卷表格中找到表格名。使用
split 函数的目的是从结果中去掉tbl。(我使用了表格名前加tbl前缀的命名惯例)。一旦找到了表格名,就开始了向指
定表格的查询。为了使应用程序更有意思,我使用了随机函数,生成从1到10之间的任意数字。这些数字用来从指定的科目
表格中选取id:
sql_details = "select a.id, a.question, a.choice1, a.choice2,a.choice3, " &_
" a.choice4 from " & subject & " a where a.id="&MyArray(Counter)
  在这个查询中,id,question、 choice1、 choice2、 choice3、 choice4 都是科目表格中的域名。
MyArray(Counter) 是已经生成的随机数字。

  测验结束后,结果被存储起来并被增加到数据库的细节表格中。这样会员就能看到测验的结果了。(在本例中,我只
保留了科目的一个记录和百分制的分数。还可以有一个时间-日期标志。)