📄 randommain.asp
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>试卷</title>
</head>
<%@ Language=VBScript %>
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../试题库.mdb")
set rs=server.createobject("adodb.recordset")
set rs.activeconnection=conn
'提取试题
name=session("user")
tab1=session("tab")
sql="drop table " & name & tab1 &"暂时"
on error resume next
conn.Execute(sql)
sql="drop table " & name & tab1
on error resume next
conn.Execute(sql)
'标记用户状态
sql="insert into 成绩登记表 (用户名,密码,成绩,试卷名称,试卷,当前状态) values ('"& session("user") &"','"& session("mima") &"',0,'"& session("user") & tab1 &"','"& tab1 &"','正在考试')"
r1=conn.execute(sql)
sql="select * from 试卷名称表"
set base=conn.execute(sql)
'base.movefirst
do while not base.eof
sql="update 成绩登记表 set 总分='"& base("总分") &"' where 试卷名称='"& session("user") & session("tab") &"'"
conn.execute(sql)
base.movenext
loop
sql= "create table "& name & tab1 &"暂时 (ID text(50),试题 memo,试题分数 text(10),答案 memo,试题ID text(50),用户答案 memo,用户得分 text(50),试题题型 text(50),附加参数 number) "
on error resume next
conn.execute(sql)
if tab1="计算机基础培训教程随机卷" then
tablename="计算机基础培训"
end if
if tab1="计算机办公应用培训教程随机卷" then
tablename="计算机办公应用培训"
end if
if tab1="Internet培训教程随机卷" then
tablename="试题表"
end if
sql="select * from "& tablename &""
Set rs =conn.Execute(sql)
i=1
dxtl=0
pdtl=0
mxtl=0
pxtl=0
lstl=0
jstl=0
fxtl=0
rs.movefirst
do while not rs.eof
temp=rs("试题题型")
Select case temp
case "单项选择"
dxtl=dxtl+1
dxfs=dxfs+rs("试题分数")
case "多项选择"
mxtl=mxtl+1
mxfs=mxfs+rs("试题分数")
case "排序"
pxtl=pxtl+1
pxfs=pxfs+rs("试题分数")
case "判断"
pdtl=pdtl+1
pdfs=pdfs+rs("试题分数")
End Select
i=i+1
rs.movenext
loop
dim mn
mn=1
%>
<body background="../images/bgcolor.gif" aLink=#cccccc>
<table border="0" width="100%">
<tr><th width="100%" align="center"><h1><font color="#FF0000" face="楷体_GB2312"><%=tab1%></font></h1></th></tr>
</table>
<form action="randomuserresult.asp" id="FORM1" method="POST" name="FORM1" target="_top">
<%
imax=dxtl
iget=5
Dim Sl(4)
Dim n
Dim iRnd
Dim bFlag
Dim bflag1
bflag1 = True
bFlag = True
n = 0
Do While n < iget
Randomize
iRnd = Int(imax * Rnd(imax) + 0)+1
If bFlag = True Then
Sl(0) = iRnd
bFlag = False
n = n + 1
Else
bflag1 = True
i = 0
Do While i < n
If iRnd = Sl(i) Then
bflag1 = False
Exit Do
End If
i = i + 1
Loop
If bflag1 = True Then
Sl(n) = iRnd
n = n + 1
End If
End If
Loop
stzs=0
sql1="select * from "& tablename &" where 试题题型='单项选择'"
Set rs1 = conn.Execute( sql1 )
response.write "<p id='单项选择题'></p>"
response.write "<FONT color=red face=''>"
response.write "<p id='单项选择题'>一. 单项选择题</FONT></p>"
rs1.MoveFirst
x=0
z=1
do while not rs1.EOF
for n=0 to 4
y=sl(n)
if x=y then
'给用户添加
tm=rs1("试题")
tm=Replace(tm,"~","<br>",1)
fs=rs1("试题分数")
an=rs1("答案")
ID=rs1("试题ID")
tx=rs1("试题题型")
cs=rs1("附加参数")
sql="insert into "& name & tab1 &"暂时(ID,试题,试题分数,答案,试题ID,试题题型,附加参数) values ("& mn &",'"& tm &"',"& fs &",'"& an &"',"& ID &",'"& tx &"',"& cs &")"
'response.write sql
conn.execute(sql)
mn=mn+1
on error resume next
response.write "<p>" & z & "." & tm & "(" & fs & "分)"
response.write "<br><font color=blue>请选择:</font><br>"
if rs1("附加参数")<=0 then
rs1("附加参数")=1
end if
For i = 1 To rs1("附加参数")
stzs=stzs+1
Next
response.write "<input type=radio name=" & rs1("试题ID") & "a1 id=rs1('试题ID') value='A'> A"
response.write "<input type=radio name=" & rs1("试题ID") & "a1 id=rs1('试题ID') value='B'> B"
response.write "<input type=radio name=" & rs1("试题ID") & "a1 id=rs1('试题ID') value='C'> C"
response.write "<input type=radio name=" & rs1("试题ID") & "a1 id=rs1('试题ID') value='D'> D"
z=z+1
end if
next
rs1.movenext
x=x+1
loop
rs1.close
%>
<%
imax=mxtl
iget=5
Dim Sl2(4)
bflag1 = True
bFlag = True
n = 0
Do While n < iget
Randomize
iRnd = Int(imax * Rnd(imax) + 0)+1
If bFlag = True Then
Sl2(0) = iRnd
bFlag = False
n = n + 1
Else
bflag1 = True
i = 0
Do While i < n
If iRnd = Sl2(i) Then
bflag1 = False
Exit Do
End If
i = i + 1
Loop
If bflag1 = True Then
Sl2(n) = iRnd
n = n + 1
End If
End If
Loop
sql2="select * from "& tablename &" where 试题题型='多项选择'"
Set rs2 = conn.Execute( sql2 )
response.write "<p id='多项选择题'></p>"
response.write "<FONT color=red face=''>"
response.write "<p id='多项选择题'>二. 多项选择题</FONT></p>"
rs.MoveFirst
x=0
z=1
do while not rs2.EOF
for n=0 to 4
y=sl2(n)
if x=y then
'给用户添加
tm=rs2("试题")
tm=Replace(tm,"~","<br>",1)
fs=rs2("试题分数")
an=rs2("答案")
ID=rs2("试题ID")
tx=rs2("试题题型")
cs=rs2("附加参数")
sql="insert into "& name & tab1 &"暂时 (ID,试题,试题分数,答案,试题ID,试题题型,附加参数) values ("& mn &",'"& tm &"',"& fs &",'"& an &"',"& ID &",'"& tx &"',"& cs &")"
conn.execute(sql)
mn=mn+1
on error resume next
response.write "<p>" & z & "." & tm & "(" & fs & "分)"
response.write "<br><font color=blue>请选择:</font><br>"
if rs2("附加参数")<=0 then
rs2("附加参数")=1
end if
For i = 1 To rs2("附加参数")
stzs=stzs+1
Next
response.write "<input id=rs2('试题ID') name=" & rs2("试题ID") & "a1 type='checkbox' value='A' >A"
response.write "<font color=white>_________</font>"
response.write "<input id=rs2('试题ID') name=" & rs2("试题ID") & "a2 type='checkbox' VALUE='B' >B"
response.write "<font color=white>_________</font>"
response.write "<input id=rs2('试题ID') name=" & rs2("试题ID") & "a3 type='checkbox' value='C' >C"
response.write "<font color=white>_________</font>"
response.write "<input id=rs2('试题ID') name=" & rs2("试题ID") & "a4 type='checkbox' value='D' >D"
response.write "<font color=white>_________</font>"
z=z+1
end if
next
rs2.movenext
x=x+1
loop
rs2.close
%>
<%
imax=pdtl
iget=5
Dim Sl3(4)
bflag1 = True
bFlag = True
n = 0
Do While n < iget
Randomize
iRnd = Int(imax * Rnd(imax) + 0)+1
If bFlag = True Then
Sl3(0) = iRnd
bFlag = False
n = n + 1
Else
bflag1 = True
i = 0
Do While i < n
If iRnd = Sl3(i) Then
bflag1 = False
Exit Do
End If
i = i + 1
Loop
If bflag1 = True Then
Sl3(n) = iRnd
n = n + 1
End If
End If
Loop
sql3="select * from "& tablename &" where 试题题型='判断'"
Set rs3 = conn.Execute( sql3 )
response.write "<p id='判断题'></p>"
response.write "<FONT color=red face=''>"
response.write "<p id='判断题'>三.判断题</FONT></p>"
rs.MoveFirst
x=0
z=1
do while not rs3.EOF
for n=0 to 4
y=sl3(n)
if x=y then
'给用户添加
tm=rs3("试题")
fs=rs3("试题分数")
an=rs3("答案")
ID=rs3("试题ID")
tx=rs3("试题题型")
cs=rs3("附加参数")
sql="insert into "& name & tab1 &"暂时(ID,试题,试题分数,答案,试题ID,试题题型,附加参数) values ("& mn &",'"& tm &"',"& fs &",'"& an &"',"& ID &",'"& tx &"',"& cs &")"
conn.execute(sql)
mn=mn+1
on error resume next
response.write "<p>" & z & "." & tm & "(" & fs & "分)"
response.write "<br><font color=blue>请判断:</font><br>"
if rs3("附加参数")<=0 then
rs3("附加参数")=1
end if
For i = 1 To rs3("附加参数")
stzs=stzs+1
Next
response.write "<input type=radio name=" & rs3("试题ID") & "a1 id=rs3('试题ID') value='正确'> 正确"
response.write "<input type=radio name=" & rs3("试题ID") & "a1 id=rs3('试题ID') value='错误'> 错误"
z=z+1
end if
next
rs3.movenext
x=x+1
loop
rs3.close
%>
<%
imax=pxtl
iget=5
Dim sl4(4)
bflag1 = True
bFlag = True
n = 0
Do While n < iget
Randomize
iRnd = Int(imax * Rnd(imax) + 0)+1
If bFlag = True Then
sl4(0) = iRnd
bFlag = False
n = n + 1
Else
bflag1 = True
i = 0
Do While i < n
If iRnd = sl4(i) Then
bflag1 = False
Exit Do
End If
i = i + 1
Loop
If bflag1 = True Then
sl4(n) = iRnd
n = n + 1
End If
End If
Loop
sql4="select * from "& tablename &" where 试题题型='排序'"
Set rs4 = conn.Execute( sql4 )
response.write "<p id='排序题'></p>"
response.write "<FONT color=red face=''>"
response.write "<p id='排序题'>四.排序题</FONT></p>"
response.write "<p>请将答案紧凑的排列在一起,填入下面的框里,如不按要求,后果自负</P>"
m = 1
rs4.MoveFirst
x=0
z=1
do while not rs4.EOF
for n=0 to 4
y=sl4(n)
if x=y then
'给用户添加
tm=rs4("试题")
tm=Replace(tm,"~","<br>",1)
fs=rs4("试题分数")
an=rs4("答案")
ID=rs4("试题ID")
tx=rs4("试题题型")
cs=rs4("附加参数")
sql="insert into "& name & tab1 &"暂时 (ID,试题,试题分数,答案,试题ID,试题题型,附加参数) values ("& mn &",'"& tm &"',"& fs &",'"& an &"',"& ID &",'"& tx &"',"& cs &")"
conn.execute(sql)
mn=mn+1
on error resume next
response.write "<p>" & z & "." & tm & "(" & fs & "分)"
response.write "<br><font color=blue>请输入答案:</font><br>"
if rs4("附加参数")<=0 then
rs4("附加参数")=1
end if
For i = 1 To rs4("附加参数")
response.write "[" & i & "]"& " "&"<input type='text' size='13' name=" & rs4("试题ID") & "a" & i &">"
stzs=stzs+1
Next
z=z+1
end if
next
rs4.movenext
x=x+1
loop
rs4.close
session("stzs")=stzs
%>
</p>
<div id="warning" style="visibility:hidden; width:63%; height:30;margin-left:15;padding-top:5;padding-left:8;background-color:#ffdcdc">
<font face="楷体_gb2312" style="font-size:14pt; font-weight:bold;text-align:center;color:blue">
<p>交卷后,您不可以再对试卷做任何改动。所以请您在确认无误后点击下面按钮!
</p></font>
</div>
<div align="center">
<center><p>
<input type="submit" value="交卷" name=bt
onmouseover="warning.style.visibility ='visible'"
onmouseout="warning.style.visibility ='hidden'"
onclick="VBScript:form1.submit()">
<input type="submit" value="保存" name=bt
onmouseover="warning.style.visibility ='visible'"
onmouseout="warning.style.visibility ='hidden'"
onclick="VBScript:form1.submit()">
<input id="reset1" type="reset" value=" " style="background-image: url('../images/清空.jpg'); font-family: 宋体, 隶书; font-size: 14pt"></p>
</center></div><table>
</table>
</form>
</body>
</SCRIPT>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -