第一步、建立數據庫連接(以Access爲例)
<% set conn=server.createobject("adodb.connection") '建立數據庫連接對象
conn.open("DRIVER=Driver do Microsoft Access(*.mdb);UID=admin;pwd=;dbq="&server.mappath("eg.mdb")) ‘打開數據庫,如果數據庫沒有密碼 可以省略。
%>
第二步、建立記錄集
<%set rs=server.createobject("adodb.recordset") '建立記錄集對象
sql="select * from table1" ’sql數據庫查詢語句
rs.open sql,conn,1,1 ‘打開數據庫,並執SQL行查詢返回記錄集,後面有兩個1,那個是控制遊標的 如果只查詢不修改數據庫 兩處都用1,,如果是修改的話就用1,3
rs.pagesize=20 '此處設置分頁記錄 20個記錄爲一頁
if request("page")<>"" then 這裏是一個判斷的顯示頁碼的過程
epage=cint(request("page"))
if epage<1 then epage=1
if epage>rs.pagecount then epage=rs.pagecount
else
epage=1
end if
rs.absolutepage=epage ’將記錄指針移到第epage 頁的第一行
%>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#0000FF" width="80%" align="center"> 用表格或者div控制輸出格式
<tr bgcolor="#FFFFFF" align="center">
<th><%=rs(0).name%></th><th><%=rs(1).name%></th><th><%=rs(2).name%></th>顯示記錄的值
</tr>
<%
for i=0 to rs.pagesize-1 ‘循環開始
if rs.bof or rs.eof then exit for 不符合條件 跳出循環
%>
<tr bgcolor="#FFFFFF" align="center">
<td><%=rs(0).value%></td><td><%=rs(1).value%></td><td><%=rs(2).value%></td>
</tr>
<%
rs.movenext() 移到下一條記錄
next // for...next
%>
</table>
<p align="center"> 分頁顯示格式 可以自定義 從中可以看出 分頁是通過傳遞參數來實現的
<a href="">首頁</a>
<a href="index.asp?page=<%=epage-1%>">前一頁</a>
<a href="index.asp?page=<%=epage+1%>">後一頁</a>
<a href="index.asp?page=<%=rs.pagecount%>">末頁</a>
</p>
<p align="center">現在是第<%=epage%>頁一共有<%=rs.pagecount%>頁</p>
<%
Rs.close
Set rs=nothing
conn.close() ’關閉數據庫連接
%>
溫馨小提示:eg.mdb 爲數據庫 table1表名 rs(1).name等等之類的是取記錄集中的值 這些都可以自由更改,需要參照實際情況,其餘的都可以直接複製 把註釋刪掉就ok
通過上面兩個步驟,就可以實現一個簡單的Asp分頁代碼,只要理解了每一個對象屬性的具體含義,運用起來就不難。編程都重在實踐,光說不練,收不到啥效果。文中也插入了Asp編程的其他參考文章,如果看不懂可以先去看看那些文章再來吧!至於分頁代碼的樣式可以自由去設置。