⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 listarticle.jsp.htm

📁 实现论坛的各种功能 有前后台的管理
💻 HTM
字号:
<%@page contentType="text/html;charset=gb2312"%> 
<%@page import="java.sql.*"%>
<html>
<head>
<title>显示文章列表</title>
</head>
<body>
<%//防止某些用户不进行登陆,直接想进入此页面
  if (session.getAttribute("username")==null){
	response.sendRedirect("login1.jsp");	
   }%>

<%
  int PageSize=5; //一页显示的记录数 
  int RowCount; //记录总数 
  int PageCount; //总页数 
  int Page; //待显示页码 
  int i,j;
  String sql;
  String strPage = request.getParameter("page"); 
  //得到当前所在讨论区的编号bid
  int bid=Integer.parseInt(request.getParameter("bid"));
  //接收登陆用户的身份等级信息rankid
  int rankid=Integer.parseInt(request.getParameter("rankid"));
  String boardtitle="";
  if(bid==1) boardtitle="JSP技术";
  if(bid==2) boardtitle="音乐星空";
  if (strPage==null){
  //表明在QueryString中没有page这一个参数,此时显示第一页数据 
	Page = 1; 
  } else{
  //将字符串转换成整型 
	Page = Integer.parseInt(strPage); 
	if(Page<1) Page = 1; 
  }
  //加载数据库驱动并用连接池连结数据库
 try
{ 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
} 
catch(ClassNotFoundException e)
{ 
out.print(e); 
} 
String strDirPath=application.getRealPath(request.getRequestURI()); 
strDirPath=strDirPath.substring(0,strDirPath.lastIndexOf('\\'))+"\\"; 
String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+strDirPath+"forum.mdb"; 
Connection conn = DriverManager.getConnection(url); 
Statement stmt = conn.createStatement(); 



	  
  //得到发表的文章总数
  sql="select count(*) from Articles where ReplyID=0"+" and BoardID="+bid;
  ResultSet rs = stmt.executeQuery(sql);
  rs.next();
  RowCount = rs.getInt(1); 
  rs.close();
  
  PageCount = (RowCount+PageSize-1)/PageSize;  //记算总页数 
  if(Page>PageCount) Page = PageCount; 	//调整待显示的页码
  //设置获取数据SQL语句 
  sql = "select UserName,PostTime,Articles.ID,Title,ReplyNum from Articles,User where Articles.AuthorID=User.ID and Articles.ReplyID=0"+" and Articles.BoardID="+bid+" order by PostTime DESC"; 
  rs = stmt.executeQuery(sql);		//执行SQL语句并取得结果集 
  i = (Page-1) * PageSize; 	//将记录指针定位到待显示页的第一条记录上 
  for(j=0;j<i;j++) rs.next(); %> 
<center><h2><%=boardtitle%></h2></center>
  &nbsp&nbsp&nbsp&nbsp&nbsp<a href="post.jsp?reid=0&bid=<%=bid%>&rankid=<%=rankid%>">发表文章</a>
  &nbsp&nbsp<a href="listboard.jsp?rankid=<%=rankid%>">返回</a><p></p>
<table width="90%" align="center" cellpadding="3" cellspacing="1">
  <tr>
    <td bgcolor="#009933" width="1%">&nbsp;</td>
    <td bgcolor="#009933" width="44%" align="center">主题</td>
    <td bgcolor="#009933" width="10%" align="center">作者</td>
    <td bgcolor="#009933" width="10%" align="center">回复</td>
    <td bgcolor="#009933" width="25%" align="center">发表时间</td>
    <td bgcolor="#009933" width="10%" align="center">操作</td>
  </tr> 
<% 
  i = 0; 
  //分页显示,每页五条文章信息
  while(i<PageSize && rs.next()){ 
  String id=rs.getString(3);
  String title=rs.getString(4);
  String posttime=rs.getString(2);
  String author=rs.getString(1);
  int renum=rs.getInt(5);
%>  
<tr> 
<td bgcolor="#efefef" width="1%" height="41"><img src="images/folder.gif"></td>
<td bgcolor="#efefef"><a href="detail.jsp?id=<%=id%>&bid=<%=bid%>&rankid=<%=rankid%>"><%=title%></a></td>
<td bgcolor="#efefef"><%=author%></td>
<td bgcolor="#efefef"><%=renum%></td>
<td bgcolor="#efefef"><%=posttime%></td>
<td bgcolor="#efefef">
<%//如果是本人的贴子,或是此版的斑竹,或是最高管理员
  if (author.equals(session.getAttribute("username"))||rankid==bid||rankid==3){%>				
	<a href="delete.jsp?id=<%=id%>&bid=<%=bid%>&reid=0&rankid=<%=rankid%>">删除</a>
        <%}%>
</td>
</tr> 
<tr> 
</tr>
<% i++; } %>
<tr> 
<td colspan=2 align=center> 
第<%=Page%>页&nbsp&nbsp共<%=PageCount%>页  
<%if(Page<PageCount){%>
<a href="listarticle.jsp?page=<%=Page+1%>&bid=<%=bid%>&rankid=<%=rankid%>">下一页</a>
<%}%>  
<%if(Page>1){%>
<a href="listarticle.jsp?page=<%=Page-1%>&bid=<%=bid%>&rankid=<%=rankid%>">上一页</a>
<%}%> 
</td> 
</tr>
</table> 
<%
 rs.close(); 
stmt.close(); 
conn.close();
%>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -