|
本文匆匆已经全面测试,支持ASP+ACCESS以及ASP+SQL,请修改相关部分就可以了。 注意,匆匆谢绝基础问题回答,已经本代码已经很简单,如果还不懂可以参阅本站其他栏目。
<!--#include file="conn.asp"--> <% '以上为包含数据库衔接文件 '--------------------------------------------查询开始数据库
set rs=server.CreateObject("adodb.recordset") rs.open "select * from books where id="&id&" order by id desc",conn,1,1 if err.number<>0 then response.write "数据库中无数据" end if
'------------------------------------------分页开始 if rs.recordcount=0 then respose.write "没有数据" else rs.PageSize =10 '每页记录条数 iCount=rs.RecordCount '记录总数 iPageSize=rs.PageSize maxpage=rs.PageCount page=request("page")
if Not IsNumeric(page) or page="" then page=1 else page=cint(page) end if
if page<1 then page=1 elseif page>maxpage then page=maxpage end if
rs.AbsolutePage=Page
if page=maxpage then x=iCount-(maxpage-1)*iPageSize else x=iPageSize end if
For i=1 To x
'根据实际从库中获得数据并显示数据 '-------------------------------------------
'data=rs("data") 'response.write"DATA:"&data
'-------------------------------------------
rs.movenext next call PageControl(iCount,maxpage,page,"border=0 align=center","<p align=center>") end if rs.close set rs=nothing
Sub PageControl(iCount,pagecount,page,table_style,font_style) '生成上一页下一页链接 Dim query, a, x, temp action = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("SCRIPT_NAME")
query = Split(Request.ServerVariables("QUERY_STRING"), "&") For Each x In query a = Split(x, "=") If StrComp(a(0), "page", vbTextCompare) <> 0 Then temp = temp & a(0) & "=" & a(1) & "&" End If Next
Response.Write("<table width=100% border=0 cellpadding=0 cellspacing=0 bgcolor=#f1f1f1>" & vbCrLf ) Response.Write("<form method=get onsubmit=""document.location = '" & action & "?" & temp & "Page='+ this.page.value;return false;""><TR bgcolor=#f1f1f1>" & vbCrLf ) Response.Write("<TD align=center height=35>" & vbCrLf ) Response.Write(font_style & vbCrLf )
if page<=1 then Response.Write ("首 页 " & vbCrLf) Response.Write ("上一页 " & vbCrLf) else Response.Write("<A HREF=" & action & "?" & temp & "Page=1>首 页</A> " & vbCrLf) Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page-1) & ">上一页</A> " & vbCrLf) end if
if page>=pagecount then Response.Write ("下一页 " & vbCrLf) Response.Write ("尾 页 " & vbCrLf) else Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page+1) & ">下一页</A> " & vbCrLf) Response.Write("<A HREF=" & action & "?" & temp & "Page=" & pagecount & ">尾 页</A> " & vbCrLf) end if
Response.Write(" 页次:" & page & "/" & pageCount & "页" & vbCrLf) Response.Write(" 共有" & iCount & "个记录" & vbCrLf) Response.Write(" 转到" & "<INPUT CLASS=wenbenkuang TYEP=TEXT NAME=page SIZE=2 Maxlength=5 VALUE=" & page & ">" & "页" & vbCrLf & "<INPUT CLASS=go-wenbenkuang type=submit value=GO>") Response.Write("</TD>" & vbCrLf ) Response.Write("</TR></form>" & vbCrLf ) Response.Write("</table>" & vbCrLf ) End Sub %>
本代码绝对无错!
本文匆匆已经全面测试,支持ASP+ACCESS以及ASP+SQL,请修改相关部分就可以了。 注意,匆匆谢绝基础问题回答,已经本代码已经很简单,如果还不懂可以参阅本站其他栏目。
<!--#include file="conn.asp"--> <% '以上为包含数据库衔接文件 '--------------------------------------------查询开始数据库
set rs=server.CreateObject("adodb.recordset") rs.open "select * from books where id="&id&" order by id desc",conn,1,1 if err.number<>0 then response.write "数据库中无数据" end if
'------------------------------------------分页开始 if rs.recordcount=0 then respose.write "没有数据" else rs.PageSize =10 '每页记录条数 iCount=rs.RecordCount '记录总数 iPageSize=rs.PageSize maxpage=rs.PageCount page=request("page")
if Not IsNumeric(page) or page="" then page=1 else page=cint(page) end if
if page<1 then page=1 elseif page>maxpage then page=maxpage end if
rs.AbsolutePage=Page
if page=maxpage then x=iCount-(maxpage-1)*iPageSize else x=iPageSize end if
For i=1 To x
'根据实际从库中获得数据并显示数据 '-------------------------------------------
'data=rs("data") 'response.write"DATA:"&data
'-------------------------------------------
rs.movenext next call PageControl(iCount,maxpage,page,"border=0 align=center","<p align=center>") end if rs.close set rs=nothing
Sub PageControl(iCount,pagecount,page,table_style,font_style) '生成上一页下一页链接 Dim query, a, x, temp action = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("SCRIPT_NAME")
query = Split(Request.ServerVariables("QUERY_STRING"), "&") For Each x In query a = Split(x, "=") If StrComp(a(0), "page", vbTextCompare) <> 0 Then temp = temp & a(0) & "=" & a(1) & "&" End If Next
Response.Write("<table width=100% border=0 cellpadding=0 cellspacing=0 bgcolor=#f1f1f1>" & vbCrLf ) Response.Write("<form method=get onsubmit=""document.location = '" & action & "?" & temp & "Page='+ this.page.value;return false;""><TR bgcolor=#f1f1f1>" & vbCrLf ) Response.Write("<TD align=center height=35>" & vbCrLf ) Response.Write(font_style & vbCrLf )
if page<=1 then Response.Write ("首 页 " & vbCrLf) Response.Write ("上一页 " & vbCrLf) else Response.Write("<A HREF=" & action & "?" & temp & "Page=1>首 页</A> " & vbCrLf) Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page-1) & ">上一页</A> " & vbCrLf) end if
if page>=pagecount then Response.Write ("下一页 " & vbCrLf) Response.Write ("尾 页 " & vbCrLf) else Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page+1) & ">下一页</A> " & vbCrLf) Response.Write("<A HREF=" & action & "?" & temp & "Page=" & pagecount & ">尾 页</A> " & vbCrLf) end if
Response.Write(" 页次:" & page & "/" & pageCount & "页" & vbCrLf) Response.Write(" 共有" & iCount & "个记录" & vbCrLf) Response.Write(" 转到" & "<INPUT CLASS=wenbenkuang TYEP=TEXT NAME=page SIZE=2 Maxlength=5 VALUE=" & page & ">" & "页" & vbCrLf & "<INPUT CLASS=go-wenbenkuang type=submit value=GO>") Response.Write("</TD>" & vbCrLf ) Response.Write("</TR></form>" & vbCrLf ) Response.Write("</table>" & vbCrLf ) End Sub %>
本代码绝对无错!
|
|