那要怎么去写呢,帮哈撒啊,谢谢!
这不是我写的,是我群里的Starry Sky帮你写的,叫我帮他优化的,你试试套用一下看看
[CODE]<%
'该方法得事先知道数据库里题目的总数,a(8)中的8为题目总数
dim n 'n是选取的题目的数量
n=3
set conn=server.CreateObject("adodb.connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("kaoshi.mdb")
set rs=server.CreateObject("adodb.recordset")
sqlstr="select id from test"
rs.open sqlstr,conn,1,1
if not rs.eof then
dim a(8),b(3),ansstr,cnt
cnt=rs.recordcount
ansstr=""
i=0
while not rs.eof
a(i)=rs("id")
i=i+1
rs.movenext
wend
rs.close
randomize()
for i=0 to n-1
c=(rnd()*cnt) mod cnt
if i>0 then
for k=0 to i-1
while b(k)=c
c=(rnd()*cnt) mod cnt
wend
next
end if
b(i)=c
sqlstr="select * from test where id ="& a(c)
rs.open sqlstr,conn,1,1
if not rs.eof then
response.write("问题:"&rs("question")&" A:"&rs("A")&" B:"&rs("B")&" C:"&rs("C")&" D:"&rs("D")&"<br>")
ansstr=ansstr&"|"&rs("ans")
end if
rs.close
next
response.Cookies("answer")=ansstr
'用户答题后,把用户的答案跟cookie中的答案比较,计算出得分,然后再把得分存回数据库
else
response.write("你选的题目数量大于数据库里的题目总数!")
end if
set rs=nothing
conn.close
set conn=nothing
%>[/CODE]