当前位置: 首页 > 图文教程 > 网络编程 > ASP > 教程/ASP 十天学会ASP之第十天

ASP
ASP采集入库生成本地文件的几个函数
百度小偷
使用ASP在IIS创建WEB站点的函数
简单过滤一下广告的代码
以前写的一个分页存储过程,刚才不小心翻出来的
用XMLHTTP来偷东西哈!
XMLHTTP利用POST发送表单时提交中文的问题
动态CSS,换肤技术
一段几乎可以让你死机的JS代码
ASP充分利用Err.Description
ASP小偷(远程数据获取)程序入门教程
一段采集程序代码
浅谈自动采集程序及入库
在ASP中调用存储过程的几种方法
使用类,实现模块化
使用模板实现ASP代码与页面分离
一个ASP小马
如何限制同一用户名同时登陆
ASP制作在线人数统计实例
在线统计代码 application

教程/ASP 十天学会ASP之第十天


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 125 ::
收藏到网摘: n/a

  学习目的:分页技术,总结

  今天最后一天我们学习一下ASP里面稍微难一点地分页技术,毕竟当我们有N条记录的时候我们不可能把所有记录显示在一个页面里面吧。

  <%
  exec="select * from test"
  set rs=server.createobject("adodb.recordset")
  rs.open exec,conn,1,1
  rs.PageSize=3
  pagecount=rs.PageCount
  page=int(request.QueryString ("page"))
  if page<=0 then page=1
  if request.QueryString("page")="" then page=1
  rs.AbsolutePage=page
  %>
  rs.pagesize设置一个页面里面显示的记录数,pagecount是我们自己定义的一个变量,rs.pagecount是记录的个数,page也是我们自己定义的一个变量,我们下一页的链接可以设置为list.asp?page=<%=page+1%>,下一页的链接可以设置为list.asp?page=<%=page-1%>,这样当按下链接的时候调用页面自己,page这个变量就+1或者-1了,最后我们让rs.absolutepage(当前页面)为第page页就可以了。

  if request.QueryString("page")="" then page=1,这句话的作用就是我们打开list.asp的时候没有跟随page变量,自动设置为page=1,防止出错,还有当我们if....then...放在一行的时候end if可以省略。是不是分页也不难?

  下面说一种特殊情况:

  if page=1 and not page=pagecount,这个时候没有上一页,但是有下一页
  elseif page=pagecount and not page=1,这个时候没有下一页,但是有上一页
  elseif page<1,这个时候没有任何记录
  elseif page>pagecount then,这个时候没有任何记录
  elseif page=1 and page=pagecount,这个时候没有上一页,没有下一页
  else,这个时候有上一页,也有下一页。   

  下面看一段显示1到n页,且每一个数字点击以后就出现这个数在代表的页面的代码,很常见哦。

  <%for i=1 to pagecount%>
  <a href="list.asp?page=<%=i%>"><%=i%></a><%next%>
  for....next是循环从i=1开始,循环一次加1到pagecount为止。

  最后我的实例里面包含了一个最简单的ASP程序,但是功能样样有,是ASP的精髓,每一个ASP大型程序都包含了它。

  add.htm增加记录页面
  add.asp增加记录操作
  conn.asp数据库链接
  del.asp删除记录操作
  modify.asp修改记录页面
  modifysave.asp修改记录操作
  list.asp这个是这个程序的核心,通过这个页面实现记录的添加、修改、删除。
  test.mdb数据库,里面有aa,bb两个字段:aa数字型只能接受数字,bb是字符型。

  好了,十天到今天就结束了,我想我这个教程是让大家入门的,大家觉得写的浅也不要责怪必尽不可能初学者和高手都照顾到吧,最后我想说一句,今天的实例是ASP的精华,大家一定要好好研究,通了这个程序,你会发现你已经会ASP了。谢谢大家的支持!