分页查询数据出现问题
rzzt 2005-07-09 01:46:56 各位高手,本人在做一个按条件分页查询数据时碰到了这样一个问题:
什么条件也不选时,显示所有的数据,共9页,很正常
现在加了一个文本域,点查询选择符合条件的数据(假设有7页),第一页很正常,显示共:7页,但是:点"下一页",应该显示共:7页,但显示的共:9页。
完整代码如下(net.mdb,自己建一个就行,表名:sjzl,字段:msisdn):哪位能解决???菜鸟谢谢了!!
<form name="test" action="8.asp" method="post">
手机号码:
<input type='text' name='hm' size=14 >
<input type='submit' value='提交'>
</form>
<%
Set conn = Server.CreateObject("ADODB.Connection")
strcon="provider=microsoft.jet.oledb.4.0;data source="& _
server.mappath("net.mdb")
conn.Open strcon
%>
<%
dim m,n
set rs=server.CreateObject("adodb.recordset")
hm=Request.Form("hm")
%>
<%
if hm="" then
sqlstr="Select * From sjzl "
end if
if hm<>"" then
sqlstr=" Select * From sjzl where msisdn>"&hm
end if
%>
<%rs.open sqlstr,conn,1,3%>
<%
if Rs.Eof AND RS.BOF then
Response.Redirect("1.html")
END IF
%>
<%
rs.pagesize=20 '定义一页显示的记录数目
tatalrecord=rs.recordcount '获取记录总数目
tatalpages=rs.pagecount '获取分页的数目
rs.movefirst
nowpage=request("page") '用request获取当前页数,注意page是自己定义的变量并非函数
if nowpage&"x"="x" then '处理页码为空时的情况
nowpage=1
else
nowpage=cint(nowpage) '将页码转换成数字型
end if
rs.absolutepage=nowpage '将指针移动到当前显示页的第一条记录
%>
<%
Response.Write "<Table Border=1 cellspacing=0 cellpadding=4 bordercolor=#111111 style=Border-collapse:collapse >"
FdCount=Rs.Fields.Count
Response.Write "<TR>"
For I=0 to FdCount-1
Response.Write "<Td><Font Size=2>" &Rs.fields(i).name & " </font></Td>"
next
Response.Write "</TR>"
%>
<%
n=1
while not rs.eof and n<=rs.pagesize
%>
<%
n=n+1
if Not Rs.Eof then
Response.Write "<Tr bgcolor=#d4e8ff>"
For I=0 to FdCount-1
Response.Write "<Td><Font Size=2>" & Rs.Fields(i).Value & "</Font></Td>"
Next
Response.Write "</Tr>"
Rs.MoveNext
'Response.Write "</Table>"
end if
wend
Response.Write "</Table>"
%>
<p>共:<%=tatalpages%>页 当前为:<%=nowpage%>页
<%if nowpage>1 then%>
<a href="8.asp?hm="&hm&"&page=<%=nowpage-1%>">上一页</a>
<%else%>
上一页
<%end if%><%if nowpage < tatalpages then%>
<a href="8.asp?hm="&hm&"&page=<%=nowpage+1%>">下一页</a>
<%else%>
下一页
<%end if%>
<%if nowpage<>1 then%>
<a href="8.asp?hm="&hm&"&page=<%=1%>"> 首页</a>
<%else%>
首页
<%end if%>
<%if nowpage<>tatalpages then %>
<a href="8.asp?hm="&hm&"&page=<%=tatalpages%>">末页</a>
<%else%>
末页
<%end if%>
<%
rs.close
Set rs = Nothing
conn.close
set conn=nothing
%>
</p>