login.asp
\’ 考生验证.<%@ Language=VBScript%><%name=trim(request(\”name\”))passwd=trim(request(\”passwd\”))if name<>\”\” and passwd<>\”\” then
\’ 检查考生是否输入用户名和密码.Set conn = Server.CreateObject(\”ADODB.Connection\”)conn.Open \”driver={Microsoft Access Driver(*.mdb)};
dbq=\”& Server.MapPat(\”exercise.mdb\”)set rs= server.createobject(\”adodb.recordset\”) sql= \”select * from user where user=\’\” &name&\”\’ and passwd=\’\” & passwd &\”\’\”Set rs= conn.Execute(sql)
\’ 验证考生合法性.if not(rs.eof) thenif rs(\”score\”)<>0 then
\’ 检查考生是否已参加过考试,若是则进行成绩查询.response.write rs(\”user\”)&\”的考试成绩是\”&rs(\”score\”)else session(\”pass\”)=1session(\”user\”)=nameresponse.redirect \”test.asp\”end ifelse Response.Write \”噢,您输入的用户名或密码不正确!\”end if else end if%> <html><head><META NAME=\”GENERATOR\” Content=\”Microsoft Visual Studio 6.0\”><title>撼雪喷云之考生登录</title></head><body><FORM action=\”login.asp\” id=FORM1 method=post name=FORM1><P title=\”\”>&nbsp;</P><P title=\”\”>&nbsp;</P><P title=\”\” align=center>考生:<INPUT id=text1 name=name style=\”HEIGHT:22px; WIDTH: 103px\”></P><P title=\”\” align=center>密码:<INPUT id=password1 name=passwd style=\”HEIGHT: 23px; WIDTH: 101px\” type=password></P><P title=\”\” align=center>
<INPUT id=submit1 name=submit1 type=submit value=\”进入 \” style=\”FONT-SIZE: medium; FONT-STYLE: normal; FONT-VARIANT:normal; FONT-WEIGHT: bold\” title=\”\”></P><P title=\”\” align=center></P></FORM></body></html>
test.asp
\’ 从题库中取题考试.<%@ Language=VBScript %><%if session(\”pass\”)<>1 thenresponse.redirect \”login.asp\”else end ifSet conn = Server.CreateObject(\”ADODB.Connection\”)conn.Open \”driver={Microsoft Access Driver (*.mdb)};dbq=\”& Server.MapPath(\”exercise.mdb\”)sql=\”select * from test\”Set rs = conn.Execute( sql )
\’ 提取试题.%>
<script LANGUAGE=\”javascript\”>var isn1=null;var isn2=false;today=new Date();function stopit(){if(isn2){ clearTimeout(isn1); }isn2 = false;}function startit(){stopit();isnclock();}function isnclock(){var now=new Date();var hrs=now.getHours();var min=now.getMinutes();var sec=now.getSeconds();document.clckh.disp.value=\”\”+((hrs>12) ? hrs-12 : hrs); document.clckm.disp.value=((min<10) ? \”0\” : \”\”)+min;document.clcks.disp.value=((sec<10) ? \”0\” : \”\”)+sec;document.clck.disp.value=(hrs>=12) ? \”p.m.\” : \”a.m.\”;isn1=setTimeout(\”isnclock()\”,1000);isn2=true;}</script>
\’ 以上是一个计时函数.<html><head><META NAME=\”GENERATOR\” Content=\”Microsoft Visual Studio 6.0\”></head><body onLoad=\”startit()\” BGCOLOR=\”FFFFFF\”><center>\’ 调用计时函数显示时间.<TABLE BORDER=2><tr><td>Time</td><td>Hour</td><td>Min</td><td>Sec</td><td></td></tr><tr><td></td><td VALIGN=TOP><FORM NAME=\”clckh\” onSubmit=\”0\”><INPUT TYPE=\”text\” NAME=\”disp\” SIZE=2 VALUE =\”\”></FORM></td><td VALIGN=TOP><FORM NAME=\”clckm\” onSubmit=\”0\”><INPUT TYPE=\”text\” NAME=\”disp\” SIZE=2 VALUE =\”\”></FORM></td><td VALIGN=TOP><FORM NAME=\”clcks\” onSubmit=\”0\”><INPUT TYPE=\”text\” NAME=\”disp\” SIZE=2 VALUE =\”\”></FORM></td><td VALIGN=TOP><FORM NAME=\”clck\” onSubmit=\”0\”><INPUT TYPE=\”text\” NAME=\”disp\” SIZE=4 VALUE =\”\”></FORM></td></tr></center>
<FORM action=\”result.asp\” id=FORM1 method=post name=FORM1>
\’ 显示试题.<P>&nbsp;</P><P> <% i=1 rs.movefirst do while not rs.eof%> <P>&nbsp;&nbsp; <%=rs(\”question\”)%></P><TABLE align=center border=1 cellPadding=1cellSpacing=1 width=\”80%\”> <tr> <td style=\”WIDTH: 50%\” width=\”50%\”><INPUT name=ans<%=i%> type=radio value=\”A\”><%=rs(\”a\”)%></td><td><INPUT name=ans<%=i% >type=radio value=\”B\”><%=rs(\”b\”)%></td></tr> <tr><td><INPUT name=ans<%=i%> type=radio value=\”C\”><%=rs(\”c\”)%></td><td><INPUT name=ans<%=i%> type=radio value=\”D\”><%=rs(\”d\”)%></td> </tr></TABLE><%i=i+1rs.movenextloop%></P><P></P><P align=center><INPUT id=submit1 name=submit1 type=submit value=交卷>
<INPUT id=reset1 name=reset1 type=reset value=Reset></P></FORM></body></html>
result.asp
\’ 评分并将成绩记录到数据库.<%@ Language=VBScript %><html><head><META NAME=\”GENERATOR\” Content=\”Microsoft Visual Studio 6.0\”></head><body><P>&nbsp;</P><%name=session(\”user\”)dim scoreSet conn = Server.CreateObject(\”ADODB.Connection\”)conn.Open \”driver={Microsoft Access Driver(*.mdb)};
dbq=\” & Server.MapPath(\”exercise.mdb\”)sql=\”select ans from test\”Set rs = conn.Execute( sql )ycorrect=0rsCount=0
Response.Write \”标准答案:\”
\’ 给出标准答案并评分.Do while not rs.eofResponse.Write rs(\”ans\”)rsCount=rsCount+1if Request.Form(rsCount)=rs(\”ans\”) thenycorrect=ycorrect+1end ifrs.movenextloopResponse.Write \”<br>您的答案:\”score=int(ycorrect/rscount*100)for i=1 to Request.Form.Count-1Response.Write Request.Form(i)nextResponse.Write \”<br>\”Response.Write \”您的成绩:\”&scoreif score<60 then Response.Write \”别难过,您不及格!\”&\”<br>\”else if score>=60 Response.Write \”幸好,您及格了!\”&\”<br>\”else Response.Write \”恭喜,您获得了优秀!\”
strSql=\”insert into user (result) values (\”&score&\”) where user=\’\”&name&\”\’\”conn.execute(strSql)
\’ 将成绩存到数据库.%></body></html>
[1]