|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。分页<%@language="vbscript"codepage=936%>
<%
optionexplicit强迫界说变量
dimidcount纪录总数
dimpages每页条数
dimpagec总页数
dimpage页码
dimpagenc每页显现的分页页码数目=pagenc*2+1
pagenc=2
dimpagenmax每页显现的分页的最年夜页码
dimpagenmin每页显现的分页的最小页码
page=clng(request("page"))
dimstart程序入手下手的工夫
dimendt程序停止的工夫
dimdatafrom数据表名
datafrom="table1"
dimconn,rs
dimdatapath数据库路经
dimsqlid本页必要用到的id
dimmyself本页地点
myself=request.servervariables("path_info")
dimsqlsql语句
dimtaxis排序的语句
taxis="orderbyidasc"正排序
taxis="orderbyiddesc"倒排序
dimi用于轮回的整数
start=timer()
datapath="db.mdb"数据库
pages=30
毗连翻开数据库
dimdb
db="db.mdb"界说数据库路径及称号
setconn=server.createobject("adodb.connection")
conn.open"provider=microsoft.jet.oledb.4.0;datasource="&server.mappath(db)
iferr.number0then
response.write"数据库链接堕落!"
response.end()
endif
猎取纪录总数
sql="selectcount(id)asidcountfrom["&datafrom&"]"
setrs=server.createobject("adodb.recordset")
rs.opensql,conn,0,1
idcount=rs("idcount")猎取纪录总数
if(idcount>0)then假如纪录总数=0,则不处置
if(idcountmodpages=0)then假如纪录总数除以每页条数不足数,则=纪录总数/每页条数+1
pagec=int(idcount/pages)猎取总页数
else
pagec=int(idcount/pages)+1猎取总页数
endif
猎取本页必要用到的id============================================
读取一切纪录的id数值,由于只要id以是速率很快
sql="selectidfrom["&datafrom&"]"&taxis
setrs=server.createobject("adodb.recordset")
rs.opensql,conn,1,1
rs.pagesize=pages每页显现纪录数
ifpage<1thenpage=1
ifpage>pagecthenpage=pagec
ifpagec>0thenrs.absolutepage=page
fori=1tors.pagesize
ifrs.eofthenexitfor
if(i=1)then
sqlid=rs("id")
else
sqlid=sqlid&","&rs("id")
endif
rs.movenext
next
猎取本页必要用到的id停止============================================
endif
%>
<!doctypehtmlpublic"-//w3c//dtdhtml4.01transitional//en">
<html>
<head>
<metahttp-equiv="content-type"content="text/html;charset=gb2312">
<title>疾速分页</title>
<linkrel="stylesheet"href="page.CSS"type="text/css">
</head>
<bodybgcolor="#f2f2f2"leftmargin="0"topmargin="0"marginwidth="0"marginheight="0">
<tablewidth="100%"height="100%"border="0"cellpadding="20"cellspacing="0">
<tr>
<tdvalign="middle"><tablewidth="100%"height="100%"border="0"cellpadding="0"cellspacing="1"bgcolor="#cccccc">
<tr>
<tdvalign="top"bgcolor="#ffffff"><br><tablewidth="90%"border="0"align="center"cellpadding="0"cellspacing="0"class="zw">
<tr>
<td><strong><fontcolor="#ff6600">疾速分页</font></strong></td>
</tr>
</table>
<br>
<tablewidth="90%"border="0"align="center"cellpadding="3"cellspacing="1"bgcolor="cccccc"class="zw">
<tralign="center"bgcolor="#9fcb07">
<tdwidth="9%"><strong>ID</strong></td>
<tdwidth="37%"><strong>主题</strong></td>
<tdwidth="33%"><strong>内容</strong></td>
<tdwidth="21%"><strong>工夫</strong></td>
</tr>
<%
if(idcount>0andsqlid"")then假如纪录总数=0,则不处置
用in刷选本页所言语的数据,仅读取本页所需的数据,以是速率快
sql="select[id],[aaaa],[bbbb],[cccc]from["&datafrom&"]whereidin("&sqlid&")"&taxis
setrs=server.createobject("adodb.recordset")
rs.opensql,conn,0,1
while(notrs.eof)添补数据到表格
%>
<trbgcolor="#ffffff">
<tdalign="center"><%=rs(0)%></td>
<td><%=rs(1)%></td>
<td><%=rs(2)%></td>
<tdalign="center"><%=rs(3)%></td>
</tr>
<%
rs.movenext
wend
%>
</table>
<br>
<tablewidth="90%"border="0"align="center"cellpadding="2"cellspacing="0"class="zw">
<tralign="center">
<tdalign="left">共有<strong><fontcolor="#ff6600"><%=idcount%></font></strong>笔记录,<strong><fontcolor="#ff6600"><%=page%></font></strong>/<%=pagec%>,每页<strong><fontcolor="#ff6600"><%=pages%></font></strong>条。</td>
</tr>
</table>
<tablewidth="90%"border="0"align="center"cellpadding="2"cellspacing="0"class="zw">
<tralign="center">
<tdalign="right">
<%
设置分页页码入手下手===============================
pagenmin=page-pagenc盘算页码入手下手值
pagenmax=page+pagenc盘算页码停止值
if(pagenmin<1)then假如页码入手下手值小于1则=1
pagenmin=1
endif
if(page>1)then假如页码年夜于1则显现(第一页)
response.write("<ahref="&myself&"?page=1><fontcolor=#000000>第一页</font></a>")
endif
if(pagenmin>1)then假如页码入手下手值年夜于1则显现(更前)
response.write("<ahref="&myself&"?page="&page-(pagenc*2+1)&"><fontcolor=#000000>更前</font></a>")
endif
if(pagenmax>pagec)then假如页码停止值年夜于总页数,则=总页数
pagenmax=pagec
endif
fori=pagenmintopagenmax轮回输入页码
if(i=page)then
response.write("<fontcolor=#ff6600><strong>"&i&"</strong></font>")
else
response.write("[<ahref="&myself&"?page="&i&"><fontcolor=#000000>"&i&"</font></a>]")
endif
next
if(pagenmax<pagec)then假如页码停止值小于总页数则显现(更后)
response.write("<ahref="&myself&"?page="&page+(pagenc*2+1)&"><fontcolor=#000000>更后</font></a>")
endif
if(page<pagec)then假如页码小于总页数则显现(最初页)
response.write("<ahref="&myself&"?page="&pagec&"><fontcolor=#000000>最初页</font></a>")
endif
设置分页页码停止===============================
%><scriptlanguage="javascript">
<!--
functiongopage(){
window.location.href="<%=myself%>?page="+page.value;
}
//-->
</script>
转到
<inputname="page"type="text"value="<%=page%>"size="5">页
<inputtype="button"name="submit"value="跳转"></td>
</tr>
</table>
<%
endif
%>
<br>
<tablewidth="90%"border="0"align="center"cellpadding="2"cellspacing="0"class="zw">
<tr>
<tdalign="center">
<p>
<%
endt=timer()
rs.close
setrs=nothing
conn.close
setconn=nothing
%>
<%=formatnumber((endt-start)*1000,3)%>毫秒</p>
<p><ahref="http://stone-stone.vip.sina.com/"target="_blank">STONE空间</a></p></td>
</tr>
</table>
<br></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>
写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们) |
|