注册 登录
编程论坛 ASP技术论坛

请高手明指:分页代码中rs.absolutepage=page参数类型不对。。。

sylknb 发布于 2013-05-24 15:37, 3169 次点击
ADODB.Recordset (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。
/display.asp, 第 24 行
<%
dim conn ,rs,sql,page

Set conn = Server.CreateObject("ADODB.Connection")

     connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("data/main.mdb")

      conn.Open connstr



     set rs = server.createobject("adodb.recordset")

     sql="select * from main"

     rs.open sql,conn,1,1

rs.pagesize=5
page=Request.QueryString("page")
rs.absolutepage=page   &--ADODB.Recordset (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

%>

<%
for i= 1 to rs.pagesize
if rs.eof then
exit for
end if
%>
<%=rs("xm")%><br>
<%
rs.movenext
next
%>

<%if page=1 then%>
首页
<%else%>
<a href="?page=1">首页</a>
<%end if%>
<%if page=1 then%>
上一页
<%else%>
<a href="?page=<%=page-1%>">上一页</a>
<%end if%>
<% if rs.pagecount<page+1 then %>
下一页
<%else%>
<a href="?page=<%=page+1%>">下一页</a>
<%end if%>
<%if rs.pagecount<page+1 then%>
尾页
<%else%>
<a href="?page=<%=rs.pagecount%>">尾页</a>
<%end if%>
8 回复
#2
hu9jj2013-05-25 07:34
能解释出错这行代码准备达到什么目的么。
#3
sylknb2013-05-25 21:13
我的意思为什么会产生这个错误的提示?代码错在哪里?
#4
hu9jj2013-05-26 19:29
哦,我的意思是不理解这行代码的作用。
#5
dzt00012013-05-28 15:03
当page值没有传递时,应该让他等于1,你没有判断句可能会出错


下面是我用的一段代码,共参考
程序代码:
'-----------分页设定开始-----------
TotalCount=Rs.Recordcount '获取数据数量
PageSetup=50 '设定每页的显示数量
TotalPage=Abs(Int(TotalCount/PageSetup*(-1))) '总页数
PageCount = Int(Request.QueryString("PageIndex")) '获取当前页
if PageCount <1 then PageCount = 1
if PageCount > TotalPage then PageCount = TotalPage
'-----------分页设定结束-----------


[ 本帖最后由 dzt0001 于 2013-5-28 15:05 编辑 ]
#6
w89806372013-05-31 21:26
楼主你数据库中有数据吗。在那一句外面套一句判断语句,看看。
if not rs.eof then
rs.absolutepage=page
else
response.write("数据为0")
response.End()
end if
#7
sylknb2013-06-02 10:03
dzt0001:

PageSetup=50 '设定每页的显示数量
pagesetup是什么东西?只有pagesize属性
#8
xlct882013-06-02 20:50
同意5楼的说法,就加一句就可以了
If page = "" or Not IsNumeric(page) Then
    page = 1
End If

[ 本帖最后由 xlct88 于 2013-6-2 20:57 编辑 ]
#9
dzt00012013-06-03 12:41
回复 7楼 sylknb
变量的名字不一样而已,你换成自己的不就得了
1