海口婚纱摄影排行榜:ASP分页问题错误大家看看

来源:百度文库 编辑:神马品牌网 时间:2024/05/14 04:55:11
<%page=1 '设置变量初始值PAGE=1
page=request.querystring("page") 'page值为接受值
diaryrs.PageSize =5 '每页显示记录数
if Not IsEmpty(trim(Request("Page"))) then '如果PAGE已经初始化...
Page = CInt(Request("Page")) '接收PAGE并化为数字型赋给PAGE变量
if Page > diaryrs.PageCount then '如果接收的页数大于总页数
diaryrs.AbsolutePage = diaryrs.PageCount '设置当前显示页等于最后页
elseif Page <= 0 then '如果page小于等于0
Page = 1 '设置PAGE等于第一页
else
diaryrs.AbsolutePage = Page '如果大于零,显示当前页等于接收的页数
end if
End if
Page = diaryrs.AbsolutePage
for i=1 to diaryrs.pagesize%>

<% diaryrs.movenext
'if diaryrs.eof then
'exit
'end if这边要是没有注释掉就提示错误无效的 'exit' 语句
'/rlby/lover/diary00.asp, line 79, column 4
'exit
'---^

next %>
<%
Response.Write"共条"&diaryrs.recordcount&"记录 "
Response.Write"共"&diaryrs.pagecount&"页 "
Response.Write"当前"&page&"条 "
if diaryrs.pagecount<>1 and diaryrs.pagecount<>0 then%>
<%if page>1 then%>
[<a Href="diary00.asp?Page=<% = 1%>">首页</a>]
[<a Href="diary00.asp?Page=<% = page -1 %>">上一页</a>]
<%if page<diaryrs.pagecount then %>
[<a Href="diary00.asp?Page=<% = page + 1%>">下一页</a>]
[<a Href="diary00.asp?Page=<% = diaryrs.PageCount%>">尾页</a>]
<%else%>
[下一页] [尾页]
<% end if %>
<%else%>
[首页] [上一页]
[<a Href="diary00.asp?Page=<% = page + 1%>">下一页</a>]
[<a Href="diary00.asp?Page=<% = diaryrs.PageCount%>">尾页</a>]
<%end if %>
<%end if%>
上面的错误外还有~!http://www.cnvb.cn/lover/diary00.asp你去看看,最底下的为什么是负-1页啊~!下一页的连接怎么是page=0啊~!

<%
dim RsRecordCount,RsPageSize,RsPageNum
dim rs, conn, sql
dim page
dim i
RsPageSize = 10
page = Request.QueryString("page")
on error resume next
if page <> "" then
page = Clng(page)
else
page = 1
end if
if err.number <> 0 then
err.Clear
page = 1
end if

set conn = Server.CreateObject("Adodb.Connection")
conn.Mode = 1
conn.ConnectionString = ConnStr '修改这个数据库连接串
conn.Open
set rs = Server.CreateObject("Adodb.RecordSet")
rs.CursorType = 3
rs.CursorLocation = 3
rs.LockType = 1
rs.CacheSize = 5

sql = "" '修改SQL语句

rs.Open sql, conn
if rs.EOF and rs.BOF then
Response.Write "没有记录"
else
rs.PageSize = RsPageSize
rs.AbsolutePage = page
RsPageNum = rs.PageCount
RsRecordCount = rs.RecordCount
i = 0
do while not rs.EOF and i < RsPageSize
Response.Write rs("field1") '显示你的记录
i = i + 1
rs.MoveNext
loop
end if

rs.Close
set rs = nothing
conn.Close
set conn = nothing

Response.Write "共有" & RsRecordCount & "条记录 共" & RsPageNum & "页 当前" & page & "页"
if page > 1 then
Response.Write "[<a href=""thispage.asp?page=1"">首页</a>]"
Response.Write "[<a href=""thispage.asp?page=" & page - 1 & """>上一页</a>]"
else
Response.Write "[首页]"
Response.Write "[上一页]"
end if
if page < RsPageNum then
Response.Write "[<a href=""thispage.asp?page=" & page + 1 & """>下一页</a>]"
Response.Write "[<a href=""thispage.asp?page=" & RsPageNum & """>尾页</a>]"
else
Response.Write "[下一页]"
Response.Write "[尾页]"
end if
%>

另外,你的程序中的exit 用法是错的, 如果你想要退出页面处理的话,要用 Response.End
代码写的很乱,不规范

diaryrs需要显式申明:

Sql = "select ...."
Set diaryrs = Server.CreateObject("Adodb.Recordset")
diaryrs.Open Sql,Conn,1,1

第1,2行有问题.
如当进入http://www.cnvb.cn/lover/diary00.asp页时,page就根本没有值了.
修改成:
page=1
If Request.Querystring("page")<>"" Then
Page = Request.Querystring("page")
End If

下面的代码没看,可能还会有类似的错误,自己仔细检查下把,多用request.write page 找.

itpeng@163.com
水平有限,能帮尽量帮你.

ASP交流群-15660145-本群只面向ASP爱好者,只招有经验的人。