关于ASP分页显示的问题(因为级别关系只能给28分,解决了还可以多给点分也可以)

changenet 2001-11-24 02:32:57
我想做一个ASP页,但一页内容太多了,想分页显示全部内容,请告知小弟,感激不禁!!

...全文
186 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
freezwy 2001-11-24
  • 打赏
  • 举报
回复
够全的吧,该给分了吧,还有两栏的分页,你要吗?我看还是你自己把 这些写成函数或者过程,就可以了。
freezwy 2001-11-24
  • 打赏
  • 举报
回复
两种单栏分页的方法。
1.显示为>>首页 前页 后页 尾页 页数:1/4 4记录/页 总记录数:13条
2.显示为[1] [2] [3] [4] 页数:1/4 页 4条/页 总记录数:13条
代码如下:
1.
------------------------
<!--#include file="conn.asp"-->
<html>
<body bgcolor="#FFFFFF" text="#000000">
<table width="60%" border="1" align="center">
<%
dim rs
dim sql
msg_per_page = 4 '定义每页显示记录条数
set rs = server.createobject("adodb.recordset")
sql = "select * from page order by id" '改成你自己的SQL语句
rs.cursorlocation = 3 '使用客户端游标,可以使效率提高

rs.pagesize = msg_per_page '定义分页记录集每页显示记录数
rs.open sql,conn,0,1
if err.number<>0 then '错误处理
response.write "数据库操作失败:" & err.description
err.clear
else
if not (rs.eof and rs.bof) then '检测记录集是否为空
totalrec = RS.RecordCount 'totalrec:总记录条数
if rs.recordcount mod msg_per_page = 0 then '计算总页数,recordcount:数据的总记录数
n = rs.recordcount\msg_per_page 'n:总页数
else
n = rs.recordcount\msg_per_page+1
end if
currentpage = request("page") 'currentpage:当前页
If currentpage <> "" then
currentpage = cint(currentpage)
if currentpage < 1 then
currentpage = 1
end if
if err.number <> 0 then
err.clear
currentpage = 1
end if
else
currentpage = 1
End if
if currentpage*msg_per_page > totalrec and not((currentpage-1)*msg_per_page < totalrec)then
currentPage=1
end if
rs.absolutepage = currentpage 'absolutepage:设置指针指向某页开头
rowcount = rs.pagesize 'pagesize:设置每一页的数据记录数

dim i
dim k
%>
<tr align="center" valign="middle">
<td width="50%">ID</td>
<td width="50%">name</td>
</tr>
<%do while not rs.eof and rowcount > 0%>
<tr align="center" valign="middle">
<td width="25%"><%=rs("id")%></td>
<td width="25%"><%=rs("testname")%></td>
</tr>
<%
rowcount=rowcount-1
rs.MoveNext
loop
end if
end if
rs.close
set rs=nothing
%>

</table>
<table border="0" align="center">
<tr>
<td align="center" valign="middle">
<%call listPages()%>
</td>
</tr>
</table>
</body>
</html>
<%
sub listPages()
if n <= 1 then exit sub
%>
<p><span class=smallFont>>>
<%if currentpage = 1 then%>
<font color=darkgray face="arial" >Top Previous</font>
<%else%>
<font color=black face="arial"><a href="<%=request.ServerVariables("script_name")%>?page=1">Top</font></a>
<a href="<%=request.ServerVariables("script_name")%>?page=<%=currentpage-1%>">
<font color=black face="arial" >Previous</a></font>
<%end if%>
<%if currentpage = n then%>
<font color=darkgray face="arial" >Next Bottom</font>
<%else%>
<font color=black face="arial" ><a href="<%=request.ServerVariables("script_name")%>?page=<%=currentpage+1%>">Next</a>
<a href="<%=request.ServerVariables("script_name")%>?page=<%=n%>">Bottom</a></font>
<%end if%>
<font color=black face="arial" >
Page:<%=currentpage%>/<%=n%>pages <%=msg_per_page%>notes/page Total:<%=totalrec%>notes</font></span></p>
<%end sub%>
-------------------------------------------
2.
<!--page4.asp-->
<!--#include file="conn.asp"-->
<html>
<body bgcolor="#FFFFFF" text="#000000">
<table width="60%" border="1" align="center">
<%
dim rs
dim sql
msg_per_page = 4 '定义每页显示记录条数
set rs = server.createobject("adodb.recordset")
sql = "select * from page order by id" '改成你自己的SQL语句
rs.cursorlocation = 3 '使用客户端游标,可以使效率提高

rs.pagesize = msg_per_page '定义分页记录集每页显示记录数
rs.open sql,conn,0,1
if err.number<>0 then '错误处理
response.write "数据库操作失败:" & err.description
err.clear
else
if not (rs.eof and rs.bof) then '检测记录集是否为空
totalrec = RS.RecordCount 'totalrec:总记录条数
if rs.recordcount mod msg_per_page = 0 then '计算总页数,recordcount:数据的总记录数
n = rs.recordcount\msg_per_page 'n:总页数
else
n = rs.recordcount\msg_per_page+1
end if
currentpage = request("page") 'currentpage:当前页
If currentpage <> "" then
currentpage = cint(currentpage)
if currentpage < 1 then
currentpage = 1
end if
if err.number <> 0 then
err.clear
currentpage = 1
end if
else
currentpage = 1
End if
if currentpage*msg_per_page > totalrec and not((currentpage-1)*msg_per_page < totalrec)then
currentPage=1
end if
rs.absolutepage = currentpage 'absolutepage:设置指针指向某页开头
rowcount = rs.pagesize 'pagesize:设置每一页的数据记录数

dim i
dim k
%>
<tr align="center" valign="middle">
<td width="50%">ID</td>
<td width="50%">name</td>
</tr>
<%do while not rs.eof and rowcount > 0%>
<tr align="center" valign="middle">
<td width="25%"><%=rs("id")%></td>
<td width="25%"><%=rs("testname")%></td>
</tr>
<%
rowcount=rowcount-1
rs.MoveNext
loop
end if
end if
rs.close
set rs=nothing
%>

</table>
<table border="0" align="center">
<tr>
<td align="center" valign="middle">
<%call listPages()%>
</td>
</tr>
</table>
</body>
</html>
<%
sub listPages()
if n <= 1 then exit sub
for i=0 to n\msg_per_page-1
for j=1 to msg_per_page
%>
<font size="2" color="#006600">
<a href="<%=request.ServerVariables("script_name")%>?page=<%=i*msg_per_page+j %>">[<% =i*msg_per_page+j %>]</a></font>
<%
next
next
EndPage = n mod msg_per_page
for j=1 to EndPage
%>
<font size="2" color="#006600">
<a href="<%=request.ServerVariables("script_name")%>?page=<% =i*msg_per_page+j %>">[<% =i*msg_per_page+j %>]</a></font>
<%next%>
<font color=black face="arial" >
Page:<%=currentpage%>/<%=n%>pages <%=msg_per_page%>notes/page Total:<%=totalrec%>notes</font>
<%end sub%>
ttt2 2001-11-24
  • 打赏
  • 举报
回复
<div align="center">共有<font color=blue><%=rs.recordcount%></font>个问题</div>
</td>
<td height="24" width="35%">
<div align="center">共<%=rs.pagecount%>页,当前第<%=p%>页,每页显示<%=rs.pagesize%>条</div>
</td>
<td height="24" width="46%">
<div align="center"><a href="asklist.asp?p=1&s=<%=s%>" >首页</a>
<%if p>1 then%>
<a href="asklist.asp?p=<%=p-1%>&s=<%=s%>">
<%end if%>
上页
<%if p>1 then%>
</a>
<%end if%>
<% if p-rs.pagecount=0 then%>
下页
<%else%>
<a href="asklist.asp?p=<%=p+1%>&s=<%=s%>"> 下页</a>
<%end if%>
<a href="asklist.asp?p=<%=rs.pagecount%>&s=<%=s%>">末页</a></div>
changenet 2001-11-24
  • 打赏
  • 举报
回复
谢谢了!主页有病毒的代码我找到了,不知道用了什么软件,就加到最最最后面去了 ,真TMD烦人!

以上帮助我的朋友,非常感谢!
changenet 2001-11-24
  • 打赏
  • 举报
回复
到底有没有高手帮我一下吧!
changenet 2001-11-24
  • 打赏
  • 举报
回复
再次道歉!我总是找不到哪出问题了
changenet 2001-11-24
  • 打赏
  • 举报
回复
我也发现不对,帮我找找错误好吗?
karma 2001-11-24
  • 打赏
  • 举报
回复
your site just gave me a JS_NIMDA.A virus
changenet 2001-11-24
  • 打赏
  • 举报
回复
举个现实的例子
http://www.sachxp.net 我现在做的,比如说功略 我想加很多的功略,http://www.sachxp.net/gonglue.asp 我想在这页显示20条功略,然后在页脚显示下一页或者
更多!我看到一个页地址是这样的GamePatch.asp?start=23 STRAT=不同的数,显示不同的内容,
karma 2001-11-24
  • 打赏
  • 举报
回复
what kind of 内容?

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧