www.gusucode.com > ASP毕业设计在线考试管理系统源码 > ASP毕业设计在线考试管理系统源码\code\user\paper.asp
<!--#include file="db.asp"--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>在线考试系统</title> <script language="javascript"> <!-- float_init = 1; function DHTML_Init(Object) { if (navigator.userAgent.match(/Mozilla\/5\../) && float_init) { SetObjectOffsetTop(Object, undefined); } } function All (ID) { if (document.all) { return document.all[ID]; } else if (document.documentElement){ return document.getElementById (ID); } else if (document.layers) { return document.layers[ID]; } } function GetWindowOffsetTop() { if (window.innerHeight) { return window.pageYOffset; } else if (document.body) { return document.body.scrollTop; } } function GetWindowHeight() { if (window.innerHeight) { return window.innerHeight; } else if (document.body) { return document.body.clientHeight; }} function GetObjectHeight(Object) { DHTML_Init(Object); if (document.all || document.documentElement) { Clip = Object.style.clip; if (! Clip) { return Object.offsetHeight; } else { return GetClipElement (Clip, 'Bottom'); }} else if (document.layers) { return Object.clip.height; }} function GetClipElement (Clip, Element) { Clip = Clip.substr(Clip.indexOf('(') + 1); Clip = Clip.substr(0, Clip.length - 1); Clippers = Clip.split (" "); for (i = 0; i < Clippers.length; i++) { if (Clippers[i] != 'auto') { Clippers[i] = Clippers[i].replace (/D/g, ""); } } ClipTop = Number(Clippers[0]); ClipRight = Number(Clippers[1]); ClipBottom = Number(Clippers[2]); ClipLeft = Number(Clippers[3]); if (Element == 'Top') { return ClipTop; } else if (Element == 'Right') { return ClipRight; } else if (Element == 'Bottom') { return ClipBottom; } else if (Element == 'Left') { return ClipLeft; } else { return undefined; }} function GetObjectOffsetTop(Object) { DHTML_Init(Object); if (Object.offsetTop) { return Object.offsetTop; } else if (document.layers) { return Object.top; } } function SetObjectOffsetTop(Object, Offset) { if (Object.style) { Object.style.top = Offset; } else if (Object.top) { Object.top = Offset; }} CenterMenu = 1; MenuBorder = 100; TimeCheck = 250; TimeUpdate = 15; DivUpdate = 15; Minimum = 50; AddHeight = -4; function ScrollMenu() { Menu = All('persistMenu'); WinTop = GetWindowOffsetTop(); WinHeight = GetWindowHeight() + AddHeight; MenuTop = GetObjectOffsetTop(Menu); MenuHeight = GetObjectHeight (Menu); MenuNew = (CenterMenu) ? Math.round (WinTop + (WinHeight - MenuHeight) / 1) : WinTop + MenuBorder; if (MenuNew < Minimum) { MenuNew = Minimum; } if (MenuTop != MenuNew) { if ( (MenuTop + MenuHeight) < WinTop || MenuTop > (WinTop + WinHeight) ) { SetObjectOffsetTop (Menu, (MenuTop < MenuNew) ? (WinTop - MenuHeight) : (WinTop + WinHeight)); } else { Add = (MenuTop < MenuNew) ? 1 : -1; SetObjectOffsetTop (Menu, MenuTop + Math.round((MenuNew - MenuTop) / DivUpdate) + Add); } } window.setTimeout('ScrollMenu()', (GetObjectOffsetTop(Menu) == MenuNew) ? TimeCheck : TimeUpdate); } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_showHideLayers() { //v3.0 var i,p,v,obj,args=MM_showHideLayers.arguments; for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2]; if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; } obj.visibility=v; } } //--> </script> <link href="../Style.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#FFFFFF"> <% if request("tested")<>"y" then sql="select * from test where testid="& request("testid") set rs=server.createobject("adodb.recordset") rs.open sql,conn,3,2 subject=rs("subject") singlecount=rs("singlecount") singleper=rs("singleper") multicount=rs("multicount") multiper=rs("multiper") judgecount=rs("judgecount") judgeper=rs("judgeper") starttime=rs("starttime") endtime=rs("endtime") testtime=rs("testtime") rs.close set rs=nothing %> <p align="center"><b><span class="style1"><font face="黑体" size="5"><%=subject%>考试</font><font face="黑体" size="5"></font></span></b></p> <form method="POST" action="result.asp" onSubmit="return submitit();" name="testform"> <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1"> <tr> <td width="100%" height="25"><b><font size="3" color="#000080">一、单项选择题(每题<%=singleper%>分,共<%=singlecount%>题)</font></b></td> </tr> </table> <% randomize for i=1 to singlecount sql="select * from question where mark=0 and subject='"& subject &"' and type='单选题'" set rs=server.createobject("adodb.recordset") rs.open sql,conn,3,2 count=rs.recordcount temp=fix(count*rnd) rs.move temp rs("mark")=1 %> <table border="0" cellspacing="1" style="border-collapse: collapse" bordercolor="#C0C0C0" width="100%" id="AutoNumber2" cellpadding="0"> <tr> <td width="100%" bgcolor="#EFEFEF" height="20"> <b><%=i%>、<%=rs("question")%></b></td> </tr> <% if rs("text1")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="A">A、<%=rs("text1")%></td> </tr> <% end if %> <% if rs("text2")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="B">B、<%=rs("text2")%></td> </tr> <% end if %> <% if rs("text3")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="C">C、<%=rs("text3")%></td> </tr> <% end if %> <% if rs("text4")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="D">D、<%=rs("text4")%></td> </tr> <% end if %> <% if rs("text5")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="E">E、<%=rs("text5")%></td> </tr> <% end if %> <% if rs("text6")<>"" then %> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="F">F、<%=rs("text6")%></td> </tr> <% end if %> </table> <% j=j+1 rs.movenext rs.close next set rs=nothing %> <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber3"> <tr> <td width="100%" height="25"><b><font color="#000080" size="3">二、多项选择题(每题<%=multiper%>分,共<%=multicount%>题。每题至少有2项正确的答案,少选每答对一题得<%=multiper/4%>分,多选不得分)</font></b></td> </tr> </table> <% for i=1 to multicount sql="select * from question where mark=0 and subject='"& subject &"' and type='多选题'" set rs=server.createobject("adodb.recordset") rs.open sql,conn,3,2 count=rs.recordcount temp=fix(count*rnd) rs.movefirst rs.move temp rs("mark")=1 %> <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2"> <tr> <td width="100%" bgcolor="#EFEFEF" height="20"> <b><%=i%>、<%=rs("question")%></b></td> </tr> <% if rs("text1")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="A">A、<%=rs("text1")%></td> </tr> <% end if %> <% if rs("text2")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="B">B、<%=rs("text2")%></td> </tr> <% end if %> <% if rs("text3")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="C">C、<%=rs("text3")%></td> </tr> <% end if %> <% if rs("text4")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="D">D、<%=rs("text4")%></td> </tr> <% end if %> <% if rs("text5")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="E">E、<%=rs("text5")%></td> </tr> <% end if %> <% if rs("text6")<>"" then %> <tr> <td width="100%"> <input type="checkbox" name="NO<%=rs("id")%>" value="F">F、<%=rs("text6")%></td> </tr> <% end if %> </table> <% j=j+1 rs.movenext rs.close next set rs=nothing %> <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber5"> <tr> <td width="100%" height="25"><b><font color="#000080" size="3">三、判断题(每题<%=judgeper%>分,共<%=judgecount%>题)</font></b></td> </tr> </table> <% randomize for i=1 to judgecount sql="select * from question where mark=0 and subject='"& subject &"' and type='判断题'" set rs=server.createobject("adodb.recordset") rs.open sql,conn,3,2 count=rs.recordcount temp=fix(count*rnd) rs.move temp rs("mark")=1 %> <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2"> <tr> <td width="100%" bgcolor="#EFEFEF" height="20"> <b><%=i%>、<%=rs("question")%></b></td> </tr> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="y">正确</td> </tr> <tr> <td width="100%"> <input type="radio" name="NO<%=rs("id")%>" value="n">不正确</td> </tr> </table> <% j=j+1 rs.movenext rs.close next response.cookies("tested")="y" %> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <input type="hidden" name="testid" value="<%=request("testid")%>" size="20"> <input type="hidden" name="subject" value="<%=subject%>" size="20"> <input type="hidden" name="singlecount" value="<%=singlecount%>" size="20"> <input type="hidden" name="singleper" value="<%=singleper%>" size="20"> <input type="hidden" name="multicount" value="<%=multicount%>" size="20"> <input type="hidden" name="multiper" value="<%=multiper%>" size="20"> <input type="hidden" name="judgecount" value="<%=judgecount%>" size="20"> <input type="hidden" name="judgeper" value="<%=judgeper%>" size="20"> <input type="hidden" name="subjectid" value="<%=request("id")%>" size="20"> <input type="hidden" name="starttime" value="<%=time()%>" size="20"> <input type="hidden" name="endtime" value="<%=dateadd("h",testtime,time())%>" size="20"> <input type="hidden" name="testtime" value="<%=testtime%>" size="20"> <!-- PersistentLayer--> <div id="persistMenu" style="position: absolute; height:150px; width:230px; left:360px; top:1px;z-index: 100; visibility: hidden" class="blueborder"> <table border="1" cellspacing="0" style="border-collapse: collapse; border-width: 1" bordercolor="#111111" width="230" id="AutoNumber1" class="outborder" cellpadding="0" height="20"> <tr> <td> <table border="0" cellspacing="1" collapse" bgcolor="#5A8BCE" height="20"> <tr> <td width="226"><div align="center"><b>考试计时器</b></div></td> </tr> </table> </td> </tr> </table> <table border="0" cellspacing="1" bgcolor="#5A8BCE" width="230" cellpadding="0"> <tr> <td bgcolor="#E6F7FF"> <div align="center"> <center> <table border="0" cellspacing="1" bgcolor="#E6F7FF" > <tr> <td height="30"> <p align="center">开始时间</td> <td> <input name="mystarttime" type="text" class="smallInput" size="20" readonly></td> </tr> <tr> <td height="30"> <p align="center">结束时间</td> <td> <input type="text" name="myendtime" size="20" class="smallInput" readonly></td> </tr> <tr> <td height="30"> <p align="center">剩余时间</td> <td> <input type="text" name="lefttime" size="20" class="smallInput" readonly></td> </tr> </table> </center> </div> </td> </tr> </table> <table border="0" cellspacing="1" width="230" id="AutoNumber4" class="outborder" height="30"> <tr> <td width="100%" bgcolor="#E6F7FF"> <p align="center"> <input type="submit" value="提交交卷" name="B3" class="smallInput"></td> </tr> </table> </div> <!--End PersistentLayer--> </form> <script language="javascript"> alert("确定开始考试并启动计时器!"); MM_showHideLayers('persistMenu','','show'); ScrollMenu(); document.all.mystarttime.value=document.all.starttime.value; document.all.myendtime.value=document.all.endtime.value; var myh=document.all.testtime.value-1; var mym=59; var mys=60; function lefttime(){ mys--; if (mys<0) { mys=59; mym--; } if (mym<0) { mym=59; myh--; if (myh<0) { alert("考试时间到,确定查看成绩!"); testform.submit(); } } document.all.lefttime.value=myh+":"+mym+":"+mys; setTimeout("lefttime(myh)",1000); } lefttime(); function submitit(){ if (confirm("未到交卷时间,您确定要提前交卷么?")) return true; else return false; } </script> <% sql="select * from question where mark=1" set rs=server.createobject("adodb.recordset") rs.open sql,conn,3,2 do while not rs.eof rs("mark")=0 rs.update rs.movenext loop else %> <p></p> <p align="center"><b></b>发生错误!因为您刷新了此页。</p> <p align="center">请【<a href="../login.asp" target="_top">重新登陆</a>】参加考试。</p> <% end if %> </body> </html>