asp模块化分页制作详解

发表于:2007-06-30来源:作者:点击数: 标签:
模块化分页 1.查询语句块 % 取得当前文件名 temp = Split(request.ServerVariables("URL"), "/") fy = temp(UBound(temp)) set rs=server.createobject("adodb.recordset") if not isempty(request("page")) then pagecount=cint(request("page")) else page

模块化分页

1.查询语句块

<%
取得当前文件名
temp = Split(request.ServerVariables("URL"), "/")
fy = temp(UBound(temp))
set rs=server.createobject("adodb.recordset")
if not isempty(request("page")) then  
pagecount=cint(request("page"))  
else  
pagecount=1  
end if
sql="select  查询语句"
rs.open sql,conn,1,1
rs.pagesize=10  分页记录数
if pagecount>rs.pagecount or pagecount<=0 then             
pagecount=1             
end if            
if rs.eof and rs.bof then%>

<div align="center" class="001"><br>
对不起,没有符合搜索条件的记录!<br>
</div>

2.显示记录块

<%
else
rs.AbsolutePage=pagecount
do while not rs.eof %>

显示的记录

<% i=i+2
rs.movenext
if i>=rs.PageSize then exit do
loop
‘’www.knowsky.com
%>

3.
分页效果
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0">
<tr align="center">
    <% if rs.pagecount=1 then %>
    <td height="35" colspan="4" class=001><font color="#000000">共有[<font color="#ff0000"><%=rs.recordcount%></font>]条信息 当前显示第 <font color="red">1~<%=rs.recordcount%></font>条</font></td>
  </tr>
  <tr>
    <%else%>
    <td width="19%" height="35" align="center" valign="middle" class=001><font color="#000000">
      <% page_start=(pagecount-1)*rs.pagesize
            if pagecount=1 then page_start=1
      page_end=rs.pagesize*pagecount
      if pagecount*rs.pagesize=>rs.recordcount then page_end=rs.recordcount end if%>
      共有[<font color="#ff0000"><%=rs.recordcount%></font>]信息</font></td>
    <td width="58%" height="30" align="center" class="fy"><font color="#000000">
          <%
    if pagecount>5 and pagecount< rs.PageCount-5 and rs.pagecount>10 then
    qizu=pagecount-4
    min=pagecount+5
    response.write"<a href="&source&"?page=1&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>首页</font></a>&nbsp;"
    response.write"<a href="&source&"?page="+cstr(pagecount-1)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>上一页</font></a>&nbsp;"
    for ipage=qizu to min
             if ipage<>pagecount then
             response.write"<a href="&source&"?page="+cstr(ipage)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&cityid="&cityid&"><font color=‘’0000BE‘’>"+cstr(ipage)+"</font></a>&nbsp;"
             else
             response.write "<font color=‘’#FF0000‘’>"&ipage&"</font> "
             end if
    next
    response.write"<a href="&source&"?page="+cstr(pagecount+1)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>下一页</font></a>&nbsp;"
    response.write"<a href="&source&"?page="+cstr(rs.PageCount)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>尾页</font></a>"
    end if
    if rs.PageCount<11 then
    for ipage=1 to rs.PageCount
             if ipage<>pagecount then
             response.write"<a href="&source&"?page="+cstr(ipage)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&cityid="&cityid&"><font color=‘’0000BE‘’>"+cstr(ipage)+"</font></a>&nbsp;"
             else
             response.write "<font color=‘’#FF0000‘’>"&ipage&"</font> " 
             end if
    next
    end if
    if pagecount < 6 and rs.PageCount>10 then
    for ipage=1 to 10
             if ipage<>pagecount then
             response.write"<a href="&source&"?page="+cstr(ipage)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&cityid="&cityid&"><font color=‘’0000BE‘’>"+cstr(ipage)+"</font></a>&nbsp;"
             else
             response.write "<font color=‘’#FF0000‘’>"&ipage&"</font> "      
             end if
    next
    response.write "<a href="&source&"?page="+cstr(rs.PageCount)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>尾页</font></a>"
    end if
    if pagecount>rs.PageCount-6 and rs.PageCount>10 then
    response.write "<a href="&source&"?page=1&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&title="&title&"&cityid="&cityid&">
<font color=‘’0000BE‘’>首页</font></a>&nbsp;"  
    for ipage=rs.PageCount-9 to rs.PageCount
             if ipage<>pagecount then
             response.write"<a href="&source&"?page="+cstr(ipage)+"&sortid="&sortid&"&typeid="&typeid&"&qylb="&qylb&"&cityid="&cityid&"><font color=‘’0000BE‘’>"+cstr(ipage)+"</font></a>&nbsp;"
             else
             response.write "<font color=‘’#FF0000‘’>"&ipage&"</font> "
             end if
    next
    end if
             %>
    </font></td><form name=go2to form method=Post action=<%=fy%>> 
    <td width="13%" align="center" valign="middle" class="fy">
   <input type=‘’hidden‘’ name=‘’sortid‘’ value="<%=sortid%>"><input type=‘’hidden‘’ name=‘’typeid‘’ value="<%=typeid%>"><input type=‘’hidden‘’ name=‘’qylb‘’ value="<%=qylb%>"><input type=‘’hidden‘’ name=‘’title‘’ value="<%title%>"><input type=‘’hidden‘’ name=‘’cityid‘’ value="<%=cityid%>"><font color=‘’000064‘’> 转到第<input type=‘’text‘’ name=‘’page‘’ size=2 maxLength=3>
   页</font>                              
   </td>
    <td width="10%" align="center" valign="middle" class="fy"><input name="image" type=‘’image‘’ onClick=check() value=‘’确 定‘’ src=‘’../images/button_h.jpg‘’></td>
    </form>
  <tr>
    <td height="20" colspan="6" valign="bottom"><font color="#000000">&nbsp; </font></td>
  </tr>
  <% end if %>
  <% end if %>
</table>

原文转自:http://www.ltesting.net