questionmanager.jsp
上传用户:hjt198082
上传日期:2015-04-16
资源大小:95k
文件大小:5k
源码类别:

MySQL数据库

开发平台:

Java

  1. <%@ page contentType="text/html;charset=GBK" %>
  2. <%@ page language="java" import="java.sql.*"%>
  3. <%@ page import="java.util.*" %>
  4. <jsp:useBean id="conn" scope="page" class="test.ConnOracle"/>
  5. <%@ include file="/public/checkvalidadmin.jsp"%>
  6. <%@ include file="/public/checkvalidadmin8.jsp"%>
  7. <%!
  8. ResultSet rs = null;
  9. ResultSet rsTmp = null;
  10. String sql = "";
  11. int PageSize = 13;
  12. int Page = 1;
  13. int totalPage = 1;
  14. String str = "";
  15. Hashtable ht = new Hashtable();   // Hashtable用于存储班级代号和班级信息之间的对应关系
  16. public String ShowOnePage(ResultSet rs, int Page, int PageSize) {
  17.   str = "";
  18.   // 先将记录指针定位到相应的位置
  19.   try {
  20.    rs.absolute( (Page-1) * PageSize + 1);
  21.   }catch(SQLException e) {
  22.   }
  23.         
  24.   for(int iPage=1; iPage<=PageSize; iPage++) {
  25.      str += showOneRecord(rs,Page);
  26.  try {
  27.      if(!rs.next()) break;
  28.  }catch(Exception e) {}
  29.   }
  30.   return str;
  31. }
  32. // 显示单行记录子模块, 由于要将当前页码传递到后面的修改和删除页面,
  33. // 因此,下面的shosOneRecord方法多了第二个参数
  34. public String showOneRecord( ResultSet rs, int page ) {
  35. String tt = "";
  36. int endindex = 16;       // 在默认情况下显示题目标题中的前12个汉字字符
  37. String tmp = "";
  38. int tmpselectid = 0;
  39. int tmpquestionid = 0;
  40. try {
  41.    tt += "<TR class=dbt4 align=middle>";
  42. tmpquestionid = rs.getInt("questionid");
  43.     tt += "<TD>" + tmpquestionid + "</TD>";
  44. tmpselectid = rs.getInt("selectid");
  45. if(tmpselectid==1)
  46.           tt += "<TD>单选</TD>";
  47. else if(tmpselectid==2)
  48. tt += "<TD><font color=blue>多选</font></TD>";
  49.     tt += "<TD>" + (String)(ht.get(rs.getString("classid"))) + "</TD>";
  50. tmp = rs.getString("qname");
  51. if(tmp.length() < endindex) 
  52. endindex = tmp.length();
  53.     tt += "<TD align=left>" + tmp.substring(0,endindex) + "</TD>";
  54.             tt += "<TD><a href=javascript:openwin(" + tmpquestionid + ")>";
  55. tt += "察看</a></TD>";
  56.     tt += "<TD><a href=questionchange.jsp?id=" + tmpquestionid + "&Page=" + page + ">修改</TD>";
  57.     tt += "<TD><a href=questiondel.jsp?id=" + tmpquestionid + "&Page=" + page + ">删除</TD>";
  58.         tt += "</TR>";
  59. }catch(SQLException e) {}
  60. return tt;
  61. }
  62. %>
  63. <%
  64.    sql = "select * from test_classinfo";
  65.    try {
  66.        rs = conn.executeQuery( sql );
  67.    }catch(Exception e) {
  68.        out.println("访问课程信息数据出错!");
  69.    return;
  70.    }
  71.    if(!rs.next()) {
  72.        out.println("系统数据库中无课程信息数据!");
  73.        return;
  74.    }
  75.    do {
  76.        ht.put(rs.getString("classid"),rs.getString("classname"));
  77.    }while(rs.next());
  78.    sql = "select * from test_question_lib order by questionid";
  79.    try {
  80.        rs = conn.executeQuery( sql );
  81.    }catch(Exception e) {
  82.        out.println("访问题库信息出错!");
  83.    return;
  84.    }
  85. %>
  86. <html>
  87. <head>
  88. <title>试题库信息维护</title>
  89.     <link rel="stylesheet" href="../public/style.css">
  90. <Script language="JavaScript">
  91. //打开新窗口函数openwin
  92. function openwin(id)
  93. {
  94.   window.open('questiondetails.jsp?id='+id,'infoWin', 'height=400,width=600,scrollbars=yes,resizable=yes');
  95. }
  96. </Script>
  97. </head>
  98. <body  class="ss">
  99. <h2 ALIGN="CENTER">试题库信息维护</h2>
  100. <hr>
  101. <center>
  102. <table class=dbt2 width=640 cellSpacing=1 cellPadding=3 border=0>
  103. <tr class=dbt3 align=middle>
  104. <TH>题目编号</TH>
  105. <TH>题型</TH>
  106. <TH>课程名称</TH>
  107. <TH width=200>题目简介</TH>
  108. <TH>题目详细信息</TH>
  109. <TH colspan=2>编辑操作</TH>
  110. </TR>
  111. <%
  112. rsTmp = conn.executeQuery("select count(*) as mycount from test_question_lib");
  113. rsTmp.next();
  114. int totalrecord = rsTmp.getInt("mycount");
  115. if(totalrecord % PageSize ==0) totalPage = totalrecord / PageSize;  // 如果是当前页码的整数倍
  116. else  totalPage = (int) Math.floor( totalrecord / PageSize ) + 1;   // 如果最后还空余一页
  117. if(totalPage == 0) totalPage = 1;
  118. rsTmp.close();
  119. try {
  120. if(request.getParameter("Page")==null || request.getParameter("Page").equals("")) 
  121.    Page = 1;
  122. else
  123.    Page = Integer.parseInt(request.getParameter("Page"));
  124.       // 捕获用户从浏览器地址拦直接输入类似于Page=sdfsdfsdf等非法信息所造成的异常
  125. } catch(java.lang.NumberFormatException e) {  
  126.    Page = 1;
  127. }
  128. if(Page < 1)  Page = 1;
  129. if(Page > totalPage) Page = totalPage;
  130. out.println(ShowOnePage(rs, Page, PageSize));
  131. %>
  132. <TR class=dbt4 align=center>
  133.     <TD colspan=7><a href=questionadd.jsp>增加新题</a></TD>
  134. </TR>
  135. </table>
  136. <form Action="questionmanager.jsp" Method="GET">
  137. <% 
  138.    if(Page != 1) {
  139.       out.println("<A HREF=questionmanager.jsp?Page=1>第一页</A>