📄 query_mark_mn_detail.jsp
字号:
h.testPeople=rs.getInt("totalpeople");
}
else{
//历史排名 //重新求排名
h.testPeople=rs.getInt("testpeople");
i10=Math.round(h.testPeople *0.1);//top10
i30=Math.round(h.testPeople *0.3);
if(i10==0) i10=1;
if(i30==0) i30=1;
f10=0;
f30=0;
try{
sql=" SELECT mn_history.stu_id,mn_history.mn_test_id, FORMAT(SUM(mn_scores.score),0) AS totalmark"+
" FROM mn_history LEFT OUTER JOIN mn_scores ON(mn_history.stu_id=mn_scores.stu_id) "+
" AND (`mn_history`.`mn_test_id` = `mn_scores`.`mn_test_id`)"+
" WHERE mn_history.mn_test_id="+h.mn_test_id+
" GROUP BY mn_history.stu_id,mn_history.mn_test_id"+
" ORDER BY totalmark desc";
Statement tempstmt=con.createStatement();
ResultSet temprs=tempstmt.executeQuery(sql);
i=0;
int imark=0;
int tempPos=1;
float fmark=0;
int tmark=Integer.MAX_VALUE;
while(temprs.next()){
i++;
imark=temprs.getInt("totalmark");
fmark=temprs.getFloat("totalmark");
if(i<=i10)
f10+=fmark;
if(i<=i30)
f30+=fmark;
//查找分数的排名
if(debug){
out.print("<br><br>history student totalmark="+Student.total_mark +
"<br>sql totalmark="+temprs.getInt("totalmark"));
}
if(h.totalmark==imark){
h.position=String.valueOf(tempPos);
//Student.posAll=tempPos;
}
else if(tmark>imark){//分数不同
tempPos++;
tmark=imark;
}
}//end while
temprs.close();
tempstmt.close();
df=new DecimalFormat("####.00");
h.top10avg=df.format(f10/i10);
h.top30avg=df.format(f30/i30);
if(debug){
out.print("<br>Query history student's position: sql="+sql);
}
}
catch(SQLException se){
out.print("<br> Query history student's position sql="+sql);
out.print("<br>"+se.toString());
}
catch(Exception e){
out.print("<br> Query history student's total position sql="+sql);
out.print("<br>"+e.toString());
}
//将查询回的信息写入数据库
try{
sql=" update mn_history set "+
" totalpeople="+h.testPeople+","+
" position="+h.position+","+
" top10avg="+h.top10avg+","+
" top30avg="+h.top30avg+
" where stu_id='"+Student.id+"' and mn_test_id="+mnTest.id;
stmt=con.createStatement();
stmt.executeUpdate(sql);
if(debug) out.println("<br> update mn_history sql="+sql);
}
catch(SQLException se){
out.print("<br> update history position sql="+sql);
out.print("<br>"+se.toString());
}
catch(Exception e){
out.print("<br> update history position sql="+sql);
out.print("<br>"+e.toString());
}
}//end else
hisRS.addElement(h);
}//end while
}catch(SQLException se){
out.print("<br> select from mn_history error sql="+sql);
out.print("<br>"+se.toString());
}
catch(Exception e){
out.print("<br> select from mn_history error sql="+sql);
out.print("<br>"+e.toString());
}
%>
<HTML><HEAD><TITLE>模拟考试成绩查询</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<link rel="stylesheet" type="text/css" href="../css.css">
<META content="MSHTML 6.00.2462.0" name=GENERATOR></HEAD>
<BODY>
<A
href="http://jsptestonline.cosoft.org.cn/">首页</A>--共创题库--在线测试-模拟考试成绩查询
<P align="center"> </P>
<div align="center">
<table width="91%" height=832 border=0 align="center" bordercolor=#d3add1>
<tbody>
<tr>
<td height="32" align="center" valign=middle><form action="Query_mark_mn_print.jsp" method="post" name="report" target="_blank" id="report">
<table width="30%" border="0" align="right" cellpadding="0" cellspacing="0">
<tr>
<td width="2%"> </td>
<td width="62%"><input name="stuID" type="hidden" id="stuID" value="<%=studentID%>">
<input name="mn_testID" type="hidden" id="mn_testID" value="<%=mn_testID%>">
<input name="graphURLmn" type="hidden" id="graphURLmn" value="<%=graphURLmn%>">
<input name="graphURLstu" type="hidden" id="graphURLstu" value="<%=graphURLstu%>">
<input name="filenamemn" type="hidden" id="filenamemn" value="<%=filenamemn%>">
<input name="filenamestu" type="hidden" id="filenamestu" value="<%=filenamestu%>"></td>
<td width="32%"><input type="submit" name="Submit" value="打印"></td>
<td width="4%"> </td>
</tr>
</table>
</form></td>
</tr>
<tr>
<td height="32" align="center" valign=middle><strong><font size="+2" face="宋体">个人成绩单(表)</font></strong>
</td>
</tr>
<tr>
<td height="43" align="center" valign=middle><table width="100%" border="0">
<tr>
<td width="53%">考试名称: </td>
<td width="10%"> </td>
<td width="37%"><div align="left">共创教育研究院</div></td>
</tr>
<tr>
<td>
<%--=Student.jh_area_sch--%>
<%=mnTest.name%></td>
<td> </td>
<td width="37%"><div align="left">电话:010-68130545</div></td>
</tr>
<tr>
<td><em> </em></td>
<td> </td>
<td width="37%"><div align="left">网址:cosoft.org.cn</div></td>
</tr>
</table></td>
</tr>
<tr>
<td height="654" align="center" valign="top">
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td height="37" width="20%"> <div align="center">所属学校</div></td>
<td width="20%"><div align="center">姓名</div></td>
<td width="20%"><div align="center">学号</div></td>
<td width="20%"><div align="center">年级</div></td>
<td width="20%"><div align="center">考试日期</div></td>
</tr>
<tr>
<td height="37"><div align="center"><%=Student.school%></div></td>
<td><div align="center"><%=Student.name%></div></td>
<td><div align="center"><%=Student.id%></div></td>
<td><div align="center"><%=Student.grade%></div></td>
<td><div align="center"><%=Student.test_date%></div></td>
</tr>
</table>
<div align="left"><br>
成绩和排名:</div>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td height="37" width="21%"> <div align="center">成绩</div></td>
<td width="14%"><div align="center">10%平均</div></td>
<td width="14%"><div align="center">30%平均</div></td>
<td width="32%"> <div align="center" width="33%">全部参加人员排名</div></td>
<td width="19%"> <div align="center" width"33%">100人换算排名</div></td>
</tr>
<tr valign="middle">
<td height="37"><div align="center"><%=Student.total_mark%>分(满分<%=mnTest.totalMark%>分)</div></td>
<td><div align="center"><%=Student.avgTop10%>分</div></td>
<td><div align="center"><%=Student.avgTop30%></div></td>
<td> <div align="center"><%=Student.posAll%>名(全部参加排名者<%=mnTest.testPeople%>人)</div></td>
<td> <div align="center"><%=Student.posPercent%></div></td>
</tr>
</table>
<div align="left"><br>
成绩单:</div>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td width="12%" height="37"> </td>
<td width="11%"><div align="center">分数</div></td>
<td width="11%"><div align="center">得分</div></td>
<!--td width="11%"><div align="center">分校平均</div></td-->
<td width="11%"><div align="center">全体平均</div></td>
<td width="11%"><div align="center">10%平均</div></td>
<td width="11%"><div align="center">30%平均</div></td>
<td width="11%"><div align="center">总排名</div></td>
<td width="11%"><div align="center">100名排名</div></td>
</tr>
<%
for(i=0;i<subs.size();i++){
Subject s=(Subject)subs.elementAt(i);
%>
<tr valign="middle">
<td height="37" > <div align="center"><%=s.name%></div></td>
<td> <div align="center"><%=s.totalMark%></div></td>
<td> <div align="center"><%=s.realMark%></div></td>
<!--td><div align="center"><%=s.avgArea%></div></td-->
<td><div align="center"><%=s.avgTotal%></div></td>
<td><div align="center"><%=s.avgTop10%></div></td>
<td><div align="center"><%=s.avgTop30%></div></td>
<td><div align="center"><%=s.posAll%></div></td>
<td><div align="center"><%=s.posPercent%></div></td>
</tr>
<%}%>
</table>
<div align="left"><br>
判分表及难易度:准确率 A(0~20%)、B(21~40%)、C(41~60%)、D(61~80%)、E(81~100%) :</div>
<%
df=new DecimalFormat("00");
for(i=0;i<subs.size();i++){
Subject s=(Subject)subs.elementAt(i);
colwidth=" width=\""+String.valueOf(80.00/s.testnum)+"%\"";
%> <table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="8%" height="31" nowrap> <div align="center"><strong><font size="+1">科目</font></strong></div></td>
<td colspan="<%=s.testnum+1%>" width="92%">
</td>
</tr>
<tr>
<td rowspan="8" width="8%"><div align="center"><%=s.name%></div></td>
<td width="12%" height="22" nowrap> <div align="center">题号</div></td>
<%for(j=1;j<=s.testnum;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+df.format(j)+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">正确答案</div></td>
<%for(j=0;j<s.arrAnswer.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrAnswer[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">个人答案</div></td>
<%for(j=0;j<s.arrSubAnswer.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrSubAnswer[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" > <div align="center">对错</div></td>
<%for(j=0;j<s.arrTF.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrTF[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">分值</div></td>
<%for(j=0;j<s.arrMark.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrMark[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">得分</div></td>
<%for(j=0;j<s.arrSubMark.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrSubMark[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">难易度</div></td>
<%for(j=0;j<s.arrDif.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrDif[j]+"</div></td>");
%>
</tr>
<tr>
<td height="22" nowrap> <div align="center">准确率</div></td>
<%for(j=0;j<s.arrDif.length;j++)
out.println("<td "+colwidth+"><div align=\"center\">"+s.arrRate[j]+"</div></td>");
%>
</tr>
</table>
<%}//end for 科目判分%> <div align="left"><br>
历史记录 :</div>
<%
colwidth=" width=\""+String.valueOf(88.00/(maxHisSubNum+4))+"%\"";
%> <table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td width="12%" height="31" nowrap> <div align="center"><strong>考试日期</strong></div></td>
<td <%=colwidth%> nowrap><div align="center"><strong>总分</strong></div></td>
<td <%=colwidth%> nowrap><div align="center"><strong>10%平均</strong></div></td>
<td <%=colwidth%> nowrap><div align="center"><strong>30%平均</strong></div></td>
<td <%=colwidth%> nowrap><div align="center"><strong>排名</strong></div></td>
<%
/*
for(i=0;i<subs.size();i++){
out.println("<td "+colwidth+" nowrap><div align=\"center\"><strong>"+
((Subject)subs.elementAt(i)).name+"</div></td>");
}
*/
for(i=0;i<maxHisSubNum;i++){
out.println("<td "+colwidth+" nowrap> </td>");
}
%>
</tr>
<%for(i=0;i<hisRS.size();i++){
History h=(History)hisRS.elementAt(i);
%>
<tr>
<td nowrap> <div align="center"><%=h.testdate%></div></td>
<td nowrap> <div align="center"><%=h.totalmark%></div></td>
<td nowrap> <div align="center"><%=h.top10avg%></div></td>
<td nowrap> <div align="center"><%=h.top30avg%></div></td>
<td nowrap> <div align="center"><%=h.position%></div></td>
<%for(j=0;j<h.sub_num;j++)
{ String [] submark=h.sub_marks[j].split(":");
//out.println("<td><div align=\"center\">"+submark[1]+"</div></td>");
out.println("<td nowrap><div align=\"center\">"+h.sub_marks[j]+"</div></td>");
}
for(;j<maxHisSubNum;j++)
out.println("<td nowrap> </td>");
%>
</tr>
<%}%>
</table>
</td>
</tr>
<tr>
<td height="35" align="center" valign=middle>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="0%"> </td>
<td width="45%"><div align="right"><img src="<%= graphURLmn %>" width=350 height=250 border=0 ></div></td>
<td width="8%"> </td>
<td width="47%"><img src="<%= graphURLstu %>" width=350 height=250 border=0 ></td>
</tr>
<tr>
<td> </td>
<td><div align="right"></div></td>
<td> </td>
<td> </td>
</tr>
</table></td>
</tr>
</tbody>
</table>
</div>
</BODY></HTML>
<%
}
}
catch(Exception e){
System.out.print(e.toString());
}
finally{
DBCon.dropConnection();
}
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -