关于ASP分页程序

来源:百度知道 编辑:UC知道 时间:2024/05/16 23:33:03
帮我看看,那里错了运行以后出现<<错误类型:
ADODB.Recordset (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。
/index2.asp, 第 19 行>>

<%
const MaxPerPage=10
dim totalPut
dim CurrentPage
dim Totalpages
dim i,j
if not isempty(request("page"))then
currentpage=cint(request("page"))
else
currentpage=1
end if
%>
<%
dim sql
dim rs
sql="select * from user order by id desc"
set rs=Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
if rs.eof and rs.bof then
response.Write"<p align='center'>没有任何信息</p>"
else
totalPut=rs.recordcount
totalPut=rs.recordcount
if currentpage<1 then
currentpage=1
end if
if(currentpage-1)*MaxPerPage>totalPut then
if(totalPut mod MaxPerPage)=0

虽然适合在每个不同文件名里调用这个函数,但是也是有前提的,下面让我们来仔细看看其中的原委。
下面这段是基本的分页代码:

<% sql = "select……………………省略了sql语句
Set rs=Server.Createobject("ADODB.RECORDSET")
rs.Open sql, conn, 1, 1
if not rs.eof then
pages = 30 ’定义每页显示的记录数
rs.pageSize = pages ’定义每页显示的记录数
allPages = rs.pageCount’计算一共能分多少页
page = Request.QueryString("page")’通过浏览器传递的页数
’if语句属于基本的排错处理
if isEmpty(page) or Cint(page) < 1 then
page = 1
elseif Cint(page) > allPages then
page = allPages
end if
rs.AbsolutePage = page
Do while not rs.eof and pages > 0 %>
这里输出你要的内容………………
<% pages = pages - 1
rs.MoveNext
Loop
else
Response.Write("数据库暂无内容!")
End if
rs.Close
Set rs = Nothing %>

系统已经为数据分页了,下面就看看这次探讨的关键问题分页函数的定义

<% SUB pageUrl(pUrl)
Dim eUrl
txts = Request.ServerVariables("URL")
txts