经典论坛's Archiver

sk0219 发表于 2008-7-3 14:42

关于ASP分页

<%//建立与employee.mdb数据库的连接。
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=employee.mdb"
//建立emp表的Recordset对象实例rs。
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "emp", conn, 3

PageSize = 10 //pagesize属性指定了每页要显示的记录条数
[color=Red]Page[/color] = CLng(Request("[color=Red]Page[/color]")) ’string型转化为long型
If Page < 1 Then Page = 1
If Page > rs.PageCount Then Page = rs.PageCount
If Page <> 1 Then
  Response.Write "<A HREF=emp1.asp?Page=1>第一页</A> "
  Response.Write "<A HREF=emp1.asp?Page=" & (Page-1) & ">上一页</A> "
End If
If Page <> rs.PageCount Then
  Response.Write "<A HREF=emp1.asp?Page=" & (Page+1) & ">下一页</A> "
  Response.Write "<A HREF=emp1.asp?Page="&rs.PageCount & ">最后一页</A> "
End If
Response.write"页码:" & Page & "/" & rs.PageCount & "</font>"
//每一页的显示
//显示表头
Response.Write "<CENTER><TABLE BORDER=1>"
Response.WRITE "<TR><TD>" & rs.Fields("emp ID").Name & "</TD>"
Response.WRITE "<TD>" & rs.Fields("last name").Name & "</TD>"
Response.WRITE "<TD>" & rs.Fields("first name").Name & "</TD></TR>"
//循环显示每条记录
rs.AbsolutePage = Page //把页码赋给absolutepage属性从而知当前页的首条记录号
For [color=Red]iPage[/color] = 1 To rs.PageSize //
Response.WRITE "<TR><TD>" & rs.Fields("emp ID").Value & "</TD>"
Response.WRITE "<TD>" & rs.Fields("first name").Value & "</TD>"
Response.WRITE "<TD>" & rs.Fields("last name").Value & "</TD></TR>"
rs.MoveNext
If rs.EOF Then Exit For
Next
Response.Write "</TABLE></CENTER>"%>

正在自学分页的一些东西,因为没有基础,有几个地方不是很明白,路过的老师指点一下,最后能旁触一下,对我很重要,谢谢啦
问题:第一个我标红的PAGE是自己定义的变量吗?那后边一个呢?
      再后边那个IPAGE又是怎么回事。。。

sk0219 发表于 2008-7-3 22:00

这么简单的问题没人指点我一下吗 。。。。

playboy2925 发表于 2008-7-4 12:12

去找个别人封装好的分页类用吧。。。。

hanguofeng 发表于 2008-7-4 22:26

是,是
第一个是当前页数
第二个是循环变量

页: [1]



Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.