String sql="select * from ksyy.ks_lhk order by sqrq desc";
rs=stmt.executeQuery(sql);
ResultSetMetaData mtdt=rs.getMetaData(); //获取数据库表信息
int nmb=mtdt.getColumnCount(); //nmb为本SQL语句输出表字段总数
%>
<table id="PrintA" border="0" bgcolor="66CCFF" cellspacing="1" cellpadding="1" width="100%" >
<tr bgcolor="white" id="footpanel" style="height:25px;font-weight:bold;background:url(images/bbbg.gif)">
<td align="center" bgcolor="#CCCCCC" style="font-weight:bold;">ID</td>
<%
for(int i=1;i<=nmb;i++){
%>
<td align="center"><%=mtdt.getColumnName(i)%></td> <!--**在这循环列出所有字段名称**-->
<% } %>
<td align="center">编辑</td>
</tr>
<%
int j=0; //编号ID 【***错误出现变量***】
int intPageSize;
int intRowCount;
int intPageCount;
int intPage;
String strPage;
int k;
intPageSize = 30;
strPage = request.getParameter("page");
if(strPage==null){
intPage = 1;
}
else{
intPage = Integer.parseInt(strPage);
if(intPage<1){
intPage = 1;
}
}
rs.last();
intRowCount = rs.getRow();
intPageCount =(intRowCount+intPageSize-1) / intPageSize;
if(intPage>intPageCount) intPage = intPageCount;
if(intPageCount>0){
rs.absolute((intPage-1) * intPageSize+1);
k = 0;
while(k< intPageSize && !rs.isAfterLast()) {
j++;//编号ID 【***错误出现变量***】
%>
<tr>
<td align="center"><%=j %></td>
<%
for(int i=1;i<=nmb;i++){
%>
<td align="center" ><%=rs.getString(i)%></td> <!--**在这循环列出所有字段内容**-->
<%
} //for循环结束
%>
<td width="40">编辑</td>
</tr>
<%
rs.next();
k++;
}
}
rs.close();
stmt.close();
conn.close();
%>
</table>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"">
<tr>
<td height="28" align="center">当前显示第<%=intPage%>页 共 <%=intPageCount%> 页 导航:<a href="lhb.jsp?page=1">首页</a>
<%if(intPage>1){%>
<a href="lhb.jsp?page=<%=intPage-1%>">上一页</a>
<%}else{%>
上一页
<%
}%>
<%if(intPage<intPageCount){%>
<a href="lhb.jsp?page=<%=intPage+1%>">下一页</a>
<%}else{%>
下一页
<%
}%>
<a href="lhb.jsp?page=<%=intPageCount%>">尾页</a> </td>
</tr>
</table>
改为下面的
intPageCount =intRowCount/intPageSize;
if(ntRowCount % intPageSize!=0) intPageCount++;追问
我说的问题是翻页是我自定义的变量【J】还是从1到30,第二页时应该是从31开始到60。
追答rs.absolute((intPage-1) * intPageSize+1);
k = 0;
j=(intPage-1) * intPageSize+1; //添加上这语句
while(k< intPageSize && !rs.isAfterLast()) {