当前位置: 首页 > 图文教程 > 网络编程 > ASP > 分栏显示记录集的表格演示,并实现了分页

ASP
VPN技术详解(下)
微软Page Counter 组件参考(一)
微软Page Counter 组件参考(二)
@ 指令参考之一 - @CODEPAGE
@ 指令参考之二 - @ENABLESESSIONSTATE
@ 指令参考之三 - @LANGUAGE
@ 指令参考之四 - @LCID
@ 指令参考之五 - @TRANSACTION
SQL数据操作基础(初级) 1
SQL数据操作基础(初级) 2
SQL数据操作基础(初级) 3
Response对象1
Response对象2
Response对象3
Response对象4
Response对象5
WSH简介
WSH实用讲座:第一讲 获取机器的网络属性配置
WSH实用讲座---第二讲 创建用户、目录和站点
WSH实用讲座---第三讲 创建邮箱

ASP 中的 分栏显示记录集的表格演示,并实现了分页


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 42 ::
收藏到网摘: n/a

  <!-- 本示例演示一个通用的记录集分栏显示,因为有的时候显示产品等要每行显示若干个,而不是每行显示一个。如有有这种分栏显示的表格,直接把下面的代码套进去就行了,本示例是每行显示2个记录,再最下面还显示了分页栏。 -->
<%
'打开数据库
Set conn = Server.CreateObject("ADODB.Connection")
strconn="Driver={sql server};server=localhost;database=northwind;uid=sa;pwd=sa;"
conn.Open strconn
'获取本页地址
Dim fileName,postion
fileName = Request.ServerVariables("script_name")
postion = InstrRev(fileName,"/")+1
fileName = Mid(fileName,postion)
'打开记录集www.knowsky.com
set rs=server.CreateObject("adodb.recordset")
rs.open "select titleofcourtesy,firstname,photopath from Employees order by employeeid desc",conn,1,1 
%>
<!-- 产品展示表格 -->
       <table width="90%" height="300"  border="0" align="center">
<%
if not(rs.bof and rs.eof) then
pages=4
rs.pagesize=pages
if not isempty(Request.QueryString("page")) then
 thispage=clng(Request.QueryString("page"))
else
 thispage=1
end if
rscount=rs.recordcount
if thispage="" then thispage=1
if thispage<1 then thispage=1
if (thispage-1)*pages>rscount then
 if (rscount mod pages)=0 then
  thispage=rscount\pages
 else
  thispage=rscount\pages+1
 end if
end if
if(rscount mod pages)=0 then
 allpages=rscount\pages
else
 allpages=rscount\pages+1
end if
rs.absolutepage=thispage
i=1
%>
                        <tr>
<%do while not rs.eof and  pages>0 %>
                          <td valign="top"><a href="<%=rs("PhotoPath")%>" target="_blank"><img src="<%=rs("PhotoPath")%>" alt="" width="100" height="100" border="0"></a><br>
                          <%=rs("titleofcourtesy")&rs("firstname")%> </td>
<%
'分栏主要由下面这个判断来执行的,本例是每行显示两栏
if (i mod 2) =0 then
%>
      </tr><tr>
<%end if%>      
<%
pages = pages - 1
rs.movenext
i=i+1
loop
end if
%>
   
                      </table>
<!-- /产品展示表格 -->
<!-- 产品分页表格 -->
                      <table width="90%"  border="0" align="center">
                        <tr>
                          <td> <center>
 共<%=allpages%>页&nbsp;当前第<%= thispage %>页&nbsp;
 <% if thispage<>1 then %>
 <a href="<%=filename&"?page=1"%>">首页</a> <a href="<%=filename&"?page="&(thispage-1)%>">上页</a>
 <% End If %>
 <% if thispage<>allpages then %>
  <a href="<%=filename&"?page="&(thispage+1)%>">下页</a> <a href="<%=filename&"?page="&allpages&""%>">末页</a>
  <% End If %>
  </center></td>
               &