请教老师:ASP的条件分页(查询后分页)
说明:我的这个是条件分页,也就是在数据库中查到符合条件的记录后就分页显示
问题:显示重复,第一页显示,比如每页显示10条来说,第2页重复显示第1页的9,10条记录也或者是7--10条记录,其他的页面则没有这个问题,百思不得其解,老师能帮忙吗?保证加分!
下面是代码:
<link href="/css.css" rel="stylesheet" type="text/css" />
<!--#include file="conn.asp"-->
<!--#include file="checkAdmin.asp"-->
<!--#include file="quanxian.asp"-->
<%ComeUrl%>
<%
sub xianshi(b)
response.write " <table cellpadding=30 cellspacing=5 border=2 bordercolor=CECECE> <tr> <td BGCOLOR=EFEFEF> "
response.Write b
response.Write " </td> </tr> </table> "
end sub
sub guocheng1
response.Write (" <br> ")
response.Write (" <br> ")
response.Write (" <br> <br> <br> <br> <br> <br> <br> <br> <center> ")
response.Write (" <meta http-equiv=refresh content='2;url=/jiansuotable.htm'> ")
end sub
%>
<%
sub response_name
response.Write " <center> <table border=1 bordercolor=#FFCC00 cellpadding=5 cellspacing=2> "
response.Write " <tr BGCOLOR=#FF944D> "
response.Write " <td> <center> 序号 </center> </td> "
response.write " <td> <center> 姓名 </center> </td> "
response.write " <td> <center> 性别 </center> </td> "
response.write " <td> <center> 来自 </center> </td> "
response.write " <td> <center> 联系电话 </center> </td> "
response.write " <td> <center> 电子邮箱 </center> </td> "
response.write " <td> <center> 预计入住日期 </center> </td> "
response.write " <td> <center> 预计离开日期 </center> </td> "
response.write " <td> <center> 预订天数 </center> </td> "
response.write " <td> <center> 预订客房类型 </center> </td> "
response.write " <td> <center> 下单时间 </center> </td> "
response.write " </tr> "
end sub
sub response_value1
response.Write " <tr bgcolor=""#FFFFFF""> "
response.Write " <td> "&" <center> "&(page-1)*maxsize+a&" </td> "
for i=1 to rs.fields.count-1
response.Write " <td> <center> <font size=3> "&rs(i)&" </font> </td> </center> "
next
response.Write " </tr> "
end sub
sub response_value2
response.Write " <tr bgcolor=""#FFEB9B""> "
response.Write " <td> "&" <center> "&(page-1)*maxsize+a&" </td> "
for i=1 to rs.fields.count-1
response.Write " <td> <center> <font size=3> "&rs(i)&" </font> </td> </center> "
next
response.Write " </tr> "
end sub
sub aaa
'如果a等于0,那么就意味着要先显示记录头
if a=0 then response_name
a=a+1
if not (a mod 2)=0 then
response_value1
else
response_value2
end if
end sub
%>
<%
const maxsize '单页最大记录数
dim maxpage '最大页数
dim maxrecord '最大记录数
dim page '当前页次
%>
<%
set rs=server.createobject("adodb.recordset")
rs.open "select * from mytable order by id desc ",conn,1,3
dim x(3),y(3)
x(1)=nian1
x(2)=yue1
x(3)=ri1
y(1)=nian2
y(2)=yue2
y(3)=ri2
riqi_a=join(x)
riqi_b=join(y)
jiange1=DATEDIFF("d",riqi_a,riqi_b)
rs.pagesize=8
if trim(request("page")) <> "" then
page=clng(trim(request("page")))
if page> rs.pagecount then
page=rs.pagecount
end if
else
page=1
end if
dim maxsize
maxsize=rs.pagesize
if page> 1 then
if (page-1)*maxsize <rs.recordcount then
rs.move (page-1)*maxsize
end if
end if
dim maxrecord,maxpage
maxrecord=rs.recordcount
if maxrecord mod maxsize =0 then
maxpage=maxrecord \ maxsize
else
maxpage=maxrecord \ maxsize+1
end if
a=0
while not rs.eof and a <maxsize
jiange=datediff("d",rs("xiadanshijian"),riqi_b)
if jiange <=jiange1 and jiange> =0 then
aaa
end if
rs.movenext
wend
if a=0 then
guocheng1
b="系统未找到符合查询条件的结果!2秒后返回"
xianshi(b)
else
response.write " <div align=""right""> "
response.write " <a href=#> [打印本页] </a> "
response.write " <a href=index.asp> [管理页面] </a> <a href=jiansuotable.htm> [重新检索] </a> "
response.write " </div> "
response.write "系统检索到下单时间为 <font color=red> "&nian1&"年"&yue1&"月"&ri1&"日"&"--"&nian2&"年"&yue2&"月"&ri2&"日 </font> "
response.write " 的预订信息如下: <p> "
response.Write (" </table> <p> ")
response.Write " <center> 当前第 <font color=#ff0000> "&page&" </font> 页 "
response.write "总共 <font color=#ff0000> "&rs.pagecount&" </font> 页 "
response.write "共有预订信息 <font color=#ff0000> "&maxrecord&" </font> 条 "
if page <> 1 then
response.write " <a href=xiadanjiansuo.asp?page=1> [首页] </a> "
response.write " <a href=xiadanjiansuo.asp?page="&cstr(page-1)&"> [上一页] </a> "
else
response.write "[首页] "
response.write "[上一页] "
end if
if page <> rs.pagecount then
response.write " <a href=xiadanjiansuo.asp?page="&cstr(page+1)&"> [下一页] </a> "
response.write " <a href=xiadanjiansuo.asp?page="&maxpage&"> [尾页] </a> "
else
response.write "[下一页] "
response.write "[尾页]"
end if
response.write " <p> "
response.write " <a href=#> [打印本页] </a> "
response.write " <a href=index.asp> [管理页面] </a> <a href=jiansuotable.htm> [重新检索] </a> </center> <br> "
end if
close()
%>
说明:我的这个是条件分页,也就是在数据库中查到符合条件的记录后就分页显示
问题:显示重复,第一页显示,比如每页显示10条来说,第2页重复显示第1页的9,10条记录也或者是7--10条记录,其他的页面则没有这个问题,百思不得其解,老师能帮忙吗?保证加分!