intPageCount = (intRowCount+intPageSize-1) / intPageSize;
这句好象有问题呀
intPageCount=intRowCount/intPageSize;
if(intRowCount%intPageSize!=0)
intPageCount+=1;
这句好象有问题呀
intPageCount=intRowCount/intPageSize;
if(intRowCount%intPageSize!=0)
intPageCount+=1;
<%@ page import="java.sql.*"%>
<%@ page contentType="text/html;charset=gb2312"%><%
java.sql.Connection sqlCon; //数据库连接对象 java.sql.Statement sqlStmt; //SQL语句对象 java.sql.ResultSet sqlRst; //结果集对象 java.lang.String strCon; //数据库连接字符串 java.lang.String strSQL; //SQL语句 int intPageSize; //一页显示的记录数 int intRowCount; //记录总数 int intPageCount; //总页数 int intPage; //待显示页码
java.lang.String strPage; int i,j,k; //设置一页显示的记录数 intPageSize = 10; //取得待显示页码 strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据 intPage = 1; } else{//将字符串转换成整型 intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1; }//装载JDBC驱动程序
Class.forName("com.inet.tds.TdsDriver");
sqlCon= java.sql.DriverManager.getConnection("jdbc:inetdae7://localhost:1113/user_db?user=rain&password=");
//连接数据库
sqlStmt=sqlCon.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
strSQL = "select count(*) from leaveword";
//获取记录总数
sqlRst = sqlStmt.executeQuery(strSQL);
//执行SQL语句并取得结果集
sqlRst.next(); //记录集刚打开的时候,指针位于第一条记录之前 intRowCount = sqlRst.getInt(1); sqlRst.close(); //关闭结果集
intPageCount = (intRowCount+intPageSize-1) / intPageSize; //调整待显示的页码
if(intPage>intPageCount) intPage = intPageCount; //设置获取数据SQL语句 strSQL = "select * from leaveword order by time desc "; //执行SQL语句并取得结果集 sqlRst =sqlStmt.executeQuery(strSQL); //从数据库中查询出所有留言,按留言时间的倒序查询
//将记录指针定位到待显示页的第一条记录上 i = (intPage-1) * intPageSize; for(j=0;j<i;j++) sqlRst.next();%>
<html>
<head><title>欢迎来到教改同学谈留言板</title></head>
<style type="text/css">
<!--
a { text-decoration:none}
-->
</style>
<body> <p align=center><strong><font face="华文行楷" size="6" color="#336699">教改同学谈留言板</font></strong></p> <table border="1" bordercolor="#FFFFFF" cellspacing="0" cellpadding="0" width=458 align=center bgcolor="#ddf7fb">
<% //显示数据 i = 0;
while(sqlRst.next())
{
String UName=sqlRst.getString("UName");
String Email=sqlRst.getString("Email");
Timestamp Time=sqlRst.getTimestamp("Time");
Date date_time=new Date(Time.getTime());
Time time_time=new Time(Time.getTime());
//处理时间格式
String Content=sqlRst.getString("Content");
//得到留言信息各字段
%>
<!--定制输出表格样式-->
<tr><td >姓名:</td>
<td colspan="2"><%=UName%></td>
</tr>
<tr>
<td>Email:</td>
<td>
<%
if(Email!=null)
out.println("<a href=mailto:"+Email+">"+Email+"</a>");
//输出发电子邮件的链接格式
else out.println(" ");
%>
</td></tr>
<tr><td >时间:</td>
<td colspan="2">
<%
out.println(""+date_time+" "+time_time+"");
//输出时间
%></td>
</tr>
<tr><td >
内容:
</td>
<td colspan="2">
<%=Content%>
<!--输出留言内容-->
</td></tr>
<% i++; } %><tr> <td align=center colspan="2"> 第<%=intPage%>页 共<%=intPageCount%>页 <%if(intPage<intPageCount){%><a href="view_leaveword.jsp?page=<%=intPage+1%>">下一页</a><%}%> <%if(intPage>1){%><a href="view_leaveword.jsp?page=<%=intPage-1%>">上一页</a><%}
%> </td> </tr>
<tr>
<td colspan="2"> <div align="center"><a href="leaveword_default.htm">我要留言</a></div></td></tr></table> </body> </html>
<% //关闭结果集 sqlRst.close(); //关闭SQL语句对象 sqlStmt.close(); //关闭数据库sqlCon.close();%>
while(sqlRst.next())觉得这个也有问题//显示数据 i = 0;
while(sqlRst.next()&&i<intPageSize)
intPageCount = (intRowCount-1) / intPageSize + 1;
intRowCount = sqlRst.getInt(1); ????