4.2 考场管理模块 4.2.1 流程分析 考场管理的具体流程分析如图7所示。 http://www.paper51.com 内容来自论文无忧网 www.paper51.com 图7 考场管理流程 paper51.com 4.2.2 效果图 copyright paper51.com 考场老师监考时的效果图,如图8、图9所示。考试发布界面如图8所示。 http://www.paper51.com copyright paper51.com 图8 考试发布页面 http://www.paper51.com 考生信息管理页面如图9所示。 copyright paper51.com
内容来自论文无忧网 www.paper51.com
图9 考生信息管理页面 内容来自论文无忧网 www.paper51.com
4.2.3代码分析 内容来自www.paper51.com 考场管理模块主要涉及到listExam()、listStu()、lockStu()、unlockStu()、overStu()、unlockStu()、unlockAll()、lockAll()、overAll()几个函数。listExam()、listStu()用来显示考场考试信息和学生在考场时的信息,lockStu()、lockAll()用来锁定学生,unlockStu()、unlockStu()用来解锁,overStu()用来实现交卷、算出平均分、更新考场状态。 http://www.paper51.com
下面给出重要函数的实现过程。 http://www.paper51.com function lockStu() http://www.paper51.com sql="updatestuScore set stuStatus='locked' where stuStatus<>'over' andstuID='"&stuID&"' and examID="&examID copyright paper51.com setrs=conn.execute(sql) copyright paper51.com end function 内容来自www.paper51.com function unlockStu() 内容来自论文无忧网 www.paper51.com
sql="updatestuScore set stuStatus='unlock' where stuStatus<>'over' andstuID='"&stuID&"' and examID="&examID 内容来自论文无忧网 www.paper51.com setrs=conn.execute(sql) http://www.paper51.com end function 内容来自论文无忧网 www.paper51.com function overAll() http://www.paper51.com //按照考生学号交卷 paper51.com sql="select* from stuScore where examID="&examID&" andstuStatus<>'over' order by stuID" http://www.paper51.com
setrsStu=conn.execute(sql) http://www.paper51.com
whilenot(rsStu.bof or rsStu.eof) 内容来自www.paper51.com
callexamOver(rsStu("stuID"),examID) copyright paper51.com rsStu.movenext 内容来自www.paper51.com wend http://www.paper51.com //算出均分 内容来自www.paper51.com sql="selectavg(stuScore) as examAvg from stuScore where examID="&examID paper51.com setrs=conn.execute(sql) copyright paper51.com //更新考场状态 copyright paper51.com sql="updateexamInfo setexamStatus='over',examAvg="&rs("examAvg")&" whereID="&examID 内容来自论文无忧网 www.paper51.com setrs=conn.execute(sql) copyright paper51.com response.Write("已经全部交卷,请到<a href=admin_Score.asp>考生成绩管理</a>") 内容来自论文无忧网 www.paper51.com end function paper51.com 4.3 题库管理模块 copyright paper51.com 4.3.1 流程分析 内容来自论文无忧网 www.paper51.com 对题库进行管理时的流程如图10所示。 copyright paper51.com 内容来自www.paper51.com 图10 题库管理流程 copyright paper51.com 4.3.2效果图 paper51.com
添加科目时的效果图如图11所示。 内容来自论文无忧网 www.paper51.com paper51.com 图11 试题科目添加 copyright paper51.com 添加试题时的效果图如图12所示。 内容来自论文无忧网 www.paper51.com
内容来自论文无忧网 www.paper51.com 图12 试题内容添加 paper51.com 4.3.3 代码分析 http://www.paper51.com
科目的添加相对试题的添加,整个过程要简单些。科目添加时的主要函数是:show(subjID)、edit(subjID)、saveEdit(subjID)、del(subjID)、saveDel(subjID)、add()、saveAdd()、list()。而试题的添加函数和科目添加函数的结构、功能都极为相似,有show(quizID)、edit(quizID)、saveEdit(quizID) del(quizID)、saveDel(quizID)、add()、saveAdd()、list()等,只不过二者处理的内容复杂程度有所不同但在实现过程上并没有本质上的差别。 内容来自论文无忧网 www.paper51.com 下面给出有代表性的一个函数,以示区别。 内容来自论文无忧网 www.paper51.com
function show(subjID) paper51.com sql="select* from subject where ID="&subjID paper51.com setrs=conn.execute(sql) 内容来自论文无忧网 www.paper51.com
%> http://www.paper51.com <styletype="text/css"> 内容来自www.paper51.com <!-- 内容来自www.paper51.com body { 内容来自www.paper51.com background-image; url(images/netease-boboo29-autm1024no.jpg); copyright paper51.com background-color; #66ccff; http://www.paper51.com
} 内容来自论文无忧网 www.paper51.com --> paper51.com </style><tablewidth="100%" border="1" cellspacing="0"cellpadding="0"> paper51.com <tr> copyright paper51.com <td colspan="2"align="center">查看科目</td> 内容来自论文无忧网 www.paper51.com </tr> copyright paper51.com <% 内容来自论文无忧网 www.paper51.com
response.Write("<tr><td>标题</td><td>"&rs("subjName")&_ 内容来自论文无忧网 www.paper51.com "</td></tr><tr><td>内容</td><td>"&HTMLEncode(rs("subjInfo"))&_ paper51.com "</td></tr><tr><td>操作</td><td><ahref=?action=edit&ID="&rs("ID")&_ http://www.paper51.com ">编辑</a>|<ahref=?action=delete&ID="&rs("ID")&">删除</a></td></tr>") 内容来自www.paper51.com %> 内容来自论文无忧网 www.paper51.com </table> paper51.com
<% 内容来自www.paper51.com end function http://www.paper51.com function show(quizID) copyright paper51.com sql="SELECTquizLib.*, subject.subjName FROM quizLib INNER JOIN subject ON (quizLib.subjID= subject.ID) where quizLib.ID="&quizID 内容来自论文无忧网 www.paper51.com setrs=conn.execute(sql) paper51.com %> http://www.paper51.com <styletype="text/css"> http://www.paper51.com <!-- 内容来自www.paper51.com body { 内容来自论文无忧网 www.paper51.com background-image; url(images/netease-boboo29-autm1024no.jpg); 内容来自www.paper51.com background-color; #66ccff; 内容来自www.paper51.com
} 内容来自www.paper51.com --> paper51.com </style><tablewidth="100%" border="1" cellspacing="0"cellpadding="0"> 内容来自论文无忧网 www.paper51.com
<tr> 内容来自论文无忧网 www.paper51.com <td colspan="2"align="center">查看试题</td> 内容来自论文无忧网 www.paper51.com </tr> paper51.com <tr> http://www.paper51.com
<td width="20%"align="right" nowrap>试题科目:</td> http://www.paper51.com <td><%=rs("subjName") %></td> 内容来自论文无忧网 www.paper51.com </tr> paper51.com <tr> 内容来自www.paper51.com <tdalign="right">试题题型:</td> copyright paper51.com
<td> <% 内容来自论文无忧网 www.paper51.com selectcase rs("quizClass") 内容来自论文无忧网 www.paper51.com
case"radio1" http://www.paper51.com
response.Write("判断题") copyright paper51.com case"radio2" 内容来自论文无忧网 www.paper51.com
response.Write("单选题") http://www.paper51.com case"checkbox" http://www.paper51.com
response.Write("多选题") paper51.com
case"text" 内容来自论文无忧网 www.paper51.com response.Write("填空题") copyright paper51.com endselect copyright paper51.com %></td> http://www.paper51.com </tr> copyright paper51.com <tr> copyright paper51.com <tdalign="right">试题题干:</td> 内容来自www.paper51.com <td><%=rs("quizTitle") %></td> 内容来自论文无忧网 www.paper51.com </tr> 内容来自www.paper51.com <tr> 内容来自论文无忧网 www.paper51.com <td align="right">试题选择项:</td> http://www.paper51.com <td> http://www.paper51.com <% copyright paper51.com ifrs("quizClass")="radio1" orrs("quizClass")="text" then paper51.com response.Write(" ") 内容来自www.paper51.com else copyright paper51.com quizOption=split(rs("quizOption"),"|") 内容来自论文无忧网 www.paper51.com fori=0 to ubound(quizOption) paper51.com response.Write(chr(i+65)&";"&htmlEncode(quizOption(i))&"<br>") copyright paper51.com next copyright paper51.com endif copyright paper51.com %></td> copyright paper51.com </tr> 内容来自论文无忧网 www.paper51.com <tr> copyright paper51.com <tdalign="right">试题答案:</td> paper51.com <td><%=rs("quizKey")%></td> paper51.com </tr> 内容来自www.paper51.com <tr> copyright paper51.com <tdalign="right">试题作者:</td> 内容来自www.paper51.com <td><%=rs("quizWriter") %></td> 内容来自论文无忧网 www.paper51.com </tr> copyright paper51.com
<tr> 内容来自www.paper51.com <tdalign="right">选中次数:</td> paper51.com <td><%=rs("quizHits") %></td> copyright paper51.com </tr> 内容来自www.paper51.com <tr> 内容来自论文无忧网 www.paper51.com <tdalign="right">答对率:</td> copyright paper51.com
<td><%=rs("quizKeyOk") %></td> copyright paper51.com </tr> http://www.paper51.com <tr> 内容来自www.paper51.com <tdalign="right">添加时间:</td> 内容来自www.paper51.com <td><%=rs("quizTime") %></td> copyright paper51.com </tr> 内容来自www.paper51.com <tr> 内容来自论文无忧网 www.paper51.com <tdalign="right">操作</td> http://www.paper51.com <td><%="<ahref=?action=edit&ID="&rs("ID")&">编辑</a>|<ahref=?action=delete&ID="&rs("ID")&">删除</a>"%></td> http://www.paper51.com
</tr> paper51.com </table> http://www.paper51.com end function copyright paper51.com
|