关于ASP分页的问题
我编了一个程序,是对库中的记录分页显示的,可是每到最开始和最后的页码时就会出现下面的问题,第一页是没有动态显示的那些连接,即就是“第一页”“上一页”“下一页”“最后一页”这些一个都没有,但显示好着呢,是第一页的内容,最后一页会有一些垃圾代码。库中的内容也显示对者呢,只是速度有点慢。
具体代码如下:
<html>
<form name="form1" method="post" action="list1.asp">
<p>
<input type="text" name="page">
</p>
<p>
<input type="submit" name="Submit" value="提交">
</p>
</form>
<p> </p>
<%
PageSize = 3 '设定开关,指定每一页所显示的帖子数目,默认为20帖一页
Set Conn = Server.CreateObject("ADODB.Connection")
Set RS = Server.CreateObject("ADODB.RecordSet")
Conn.Open "dsn=bbs"
RS.open "message",Conn,3
Page = CLng(Request("Page")) 'string型转化为long型
total=INT(RS.recordcount / PageSize * -1)*-1
Response.Write total
If Page < 1 Then Page = 1
If Page > total Then Page = total
If Page <> 1 Then
Response.Write "<A HREF=list1.asp?Page=1>第一页</A>"
Response.Write "<A HREF=list1.asp?Page=" & (Page-1) & ">上一页</A>"
End If
If Page <> rs.PageCount Then
Response.Write "<A HREF=list1.asp?Page=" & (Page+1) & ">下一页</A>"
Response.Write "<A HREF=list1.asp?Page="&total & ">最后一页</A>"
End If
Response.write"页码:" & Page & "/" & total & "</font>"
//每一页的显示
//显示表头
Response.Write "<CENTER><TABLE BORDER=1>"
Response.WRITE "<TR><TD>" & "序号" & "</TD>"
Response.WRITE "<TD>" & "主题" & "</TD>"
Response.WRITE "<TD>" & "姓名" & "</TD>"
Response.WRITE "<TD>" & "邮箱地址" & "</TD>"
Response.WRITE "<TD>" & "日期" & "</TD></TR>"
//循环显示每条记录
m=(page-1)*pagesize
n=page*pagesize
rs.move[m]
For p=1 To PageSize
Response.WRITE "<TR><TD>" & rs.Fields("ID")& "</TD>"
Response.WRITE "<TD>" & rs.Fields("subject")& "</TD>"
Response.WRITE "<TD>" & rs.Fields("name") & "</TD>"
Response.WRITE "<TD>" & rs.Fields("email") & "</TD>"
Response.WRITE "<TD>" & rs.Fields("postdate")& "</TD></TR>"
rs.MoveNext
Next
Response.Write "</TABLE></CENTER>"%>
</html>
最后一页的垃圾代码为:
microsoft bscript编译器错误‘800a03f6’
缺少‘end’
/iishelp/common/500-100.asp,行242错误,
‘80020009’
发生意外
问题点数:20、回复次数:5Top
1 楼s1ihome(My hometown is a beautiful village)回复于 2004-08-04 20:44:36 得分 20
rs.move[m]
For p=1 To PageSize
Response.WRITE "<TR><TD>" & rs.Fields("ID")& "</TD>"
Response.WRITE "<TD>" & rs.Fields("subject")& "</TD>"
Response.WRITE "<TD>" & rs.Fields("name") & "</TD>"
Response.WRITE "<TD>" & rs.Fields("email") & "</TD>"
Response.WRITE "<TD>" & rs.Fields("postdate")& "</TD></TR>"
rs.MoveNext
if rs.eof then exit for '加上这句
Next
分页的代码很容易找到很多啊在网上,套用就可以了Top
2 楼lanechng(想和你再去吹吹风)回复于 2004-08-04 20:48:48 得分 0
楼上正解!Top
3 楼ctz(破裤男人)回复于 2004-08-04 21:01:38 得分 0
搜索一下啊 这类问题在这里是最多人问了!Top
4 楼qlwqz(草农)回复于 2004-08-04 22:52:35 得分 0
来晚了,mark一下Top
5 楼chanjuan002()回复于 2004-08-05 11:31:40 得分 0
好了,偶自己解决了Top




