第一次写这种贴子 :) 个人认为功能不错,完全自创,绝无抄袭,若有雷同,纯属巧合! 说明: .pagesize '定义每页显示记录数 .recordcount '记录总数 .pagecount '总页数 .absolutepage '当前页码(页面) index.asp 未加入任何版面设计,故有点乱。功能俺也没测试,理论上是可以实现的(除俺敲错键)。…… index.asp示例程序如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% option explicit '强制要求定义变量 'on error resume next
dim page '定义页码变量 page=Request.QueryString("page") '获取地址栏页码 if IsNumeric(page) then '页码为整数 page=cint(page) if page<1 then page=1 else page=1 end if
dim strSql '定义sql语句 'mtest 表名 'file1字段(这里例出一个字段,实际中一般是多个字段) strSql="select file1 from mtest"
dim objConn,strConn,objRs set objConn=server.CreateObject("ADODB.connection") strConn="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("db.mdb") objConn.Open strConn set objRs=server.CreateObject("ADODB.recordset") objRs.open strSql, objConn, 1,1
if objRs.eof or objRs.bof then '表内的记录情况 '以下一段为及时关闭、释放资源 objRs.close set objRs=nothing objConn.close set objConn=nothing response.write "未有数据" else objRs.pagesize=20 '一页显示的记录数 dim intReCun,intPaCun intReCun=objRs.Recordcount '总记录数 intPaCun=objRs.pagecount '总页数 if page>intPaCun then page=intPaCun '当前页码于总页数比较 objRs.absolutepage=page
response.write "共:"&intReCun&"页 当前为:"&intPaCun&"页" dim strFile1,i set strFile1=objRs("file1") '建立对象(这里例出一个字段,实际中一般是多个字段) i=1 ' 这里应该用对象 do while not objRs.eof and i<=20 '此时的20为是一页显示的记录数objRs.pagesize response.write(strFile1 & "<br>") i=i+1 objRs.movenext '下移一位 loop ' 以下一段为及时关闭、释放资源 objRs.close set objRs=nothing objConn.close set objConn=nothing set strFile1=nothing %>
<table> <form action="index.asp" method="get" name="PostTopic"> <tr> <td height="18" align="center"> <a href="index.asp">第一页</a> <a href="index.asp?page=<%=page-1%>">上一页</a> <input name="page" type="text" id="page" value="<%=page%>" size="6" maxlength="4"> <input name=cmdConfrom type=submit id="cmdConfrom" value= 提交 > <a href="index.asp?page=<%=page+1%>">下一页</a> <a href="index.asp?page=<%=intPaCun%>">最后一页</a> </td> </tr> </form> <% end if %>
|