asp分页显示 补充代码

我要做一个显示留言的页面下面的代码可以实现显示功能但是怎么向其中补充代码实现分页显示(共检索到留言共*页当前第*页首页上页下页尾页)<!--#includefile="c... 我要做一个显示留言的页面 下面的代码可以实现显示功能 但是怎么向其中补充代码实现分页显示(共检索到
留言 共*页 当前第*页 首页 上页 下页 尾页 )
<!--#include file="conn.asp"-->
<html>
<head><title>显示留言</title>
<style type="text/css">
<!--
.style2 {
font-size: 16px;
font-weight: bold;
}
-->
</style> </head>
<body>
<table width="300" border="0" align="center">
<tr>
<td align="center"><span class="style2">留言板查看</span></td>
</tr>
</table>
<br>
<br>
<table width="200" border="0" align="center">
<tr>
<td align="center"><a href="feedback.asp">发表留言</a></td>
</tr>
</table>
<br>
<br>
<%

set rs=cn.execute("select * from message order by message_time desc")

do while not rs.eof
%>
<table width="600" border="0" align="center" cellspacing="1" bgcolor="#999999">
<tr bgcolor="#FFFFFF">
<td width="80"><font size="-1" color="#000099">留言人:</font><%=rs("message_name")%></td>
<td width="400"><font size="-1" color="#000099">留言主题:</font><%=rs("message_theme")%></td>
<td width="120"><font size="-1" color="#000099">留言时间:</font><%=rs("message_time")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3"><textarea cols="100" rows="4" disabled="disabled">留言内容:<%=rs("message_content")%></textarea></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3"> </td>
</tr>
</table>
<%
rs.movenext
loop
rs.close
set rs=nothing
cn.close
set cn=nothing
%>

</body>
</html>
本人是个新手,就只有可怜的几十分,全部送上,希望高手不吝赐教
展开
 我来答
5208882
2009-05-03 · TA获得超过592个赞
知道小有建树答主
回答量:616
采纳率:0%
帮助的人:713万
展开全部
<!--#include file="conn.asp"-->
<html>
<head><title>显示留言</title>
<style type="text/css">
<!--
.style2 {
font-size: 16px;
font-weight: bold;
}
.style3 {color: #FF0000}
-->
</style> </head>
<body>
<table width="300" border="0" align="center">
<tr>
<td align="center"><span class="style2">留言板查看</span></td>
</tr>
</table>
<br>
<br>
<table width="200" border="0" align="center">
<tr>
<td align="center"><a href="feedback.asp">发表留言</a></td>
</tr>
</table>
<br>
<br>
<%
set rs=server.CreateObject("adodb.recordset")
rs.open"select *from message order by message_time desc",aa,1,1
if rs.recordcount=0 then
%>
<div align="center" class="style3">还没有人进行留言!</div>
<%
else
rs.PageSize =10 '每页记录条数
iCount=rs.RecordCount '记录总数
iPageSize=rs.PageSize
maxpage=rs.PageCount
page=request("page")

if Not IsNumeric(page) or page="" then
page=1
else
page=cint(page)
end if

if page<1 then
page=1
elseif page>maxpage then
page=maxpage
end if

rs.AbsolutePage=Page

if page=maxpage then
x=iCount-(maxpage-1)*iPageSize
else
x=iPageSize
end if
%>

<table width="600" border="0" align="center" cellspacing="1" bgcolor="#999999">
<tr bgcolor="#FFFFFF">
<td width="80"><font size="-1" color="#000099">留言人:</font><%=rs("message_name")%></td>
<td width="400"><font size="-1" color="#000099">留言主题:</font><%=rs("message_theme")%></td>
<td width="120"><font size="-1" color="#000099">留言时间:</font><%=rs("message_time")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3"><textarea cols="100" rows="4" disabled="disabled">留言内容:<%=rs("message_content")%></textarea></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3"> <%
call PageControl(iCount,maxpage,page,"border=0 align=center","<p align=center>")
end if
rs.close
set rs=nothing
Sub PageControl(iCount,pagecount,page,table_style,font_style)
'生成上一页下一页链接
Dim query, a, x, temp
action = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("SCRIPT_NAME")

query = Split(Request.ServerVariables("QUERY_STRING"), "&")
For Each x In query
a = Split(x, "=")
If StrComp(a(0), "page", vbTextCompare) <> 0 Then
temp = temp & a(0) & "=" & a(1) & "&"
End If
Next

Response.Write("<table " & Table_style & ">" & vbCrLf )
Response.Write("<form method=get onsubmit=""document.location = '" & action & "?" & temp & "Page='+ this.page.value;return false;""><TR>" & vbCrLf )
Response.Write("<TD align=right>" & vbCrLf )
Response.Write(font_style & vbCrLf )
Response.Write(" 共检索到:" & iCount & "条信息" & vbCrLf)

if page<=1 then
Response.Write ("首页 " & vbCrLf)
Response.Write ("上页 " & vbCrLf)
else
Response.Write("<A HREF=" & action & "?" & temp & "Page=1>首页</A> " & vbCrLf)
Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page-1) & ">上页</A> " & vbCrLf)
end if

if page>=pagecount then
Response.Write ("下页 " & vbCrLf)
Response.Write ("尾页 " & vbCrLf)
else
Response.Write("<A HREF=" & action & "?" & temp & "Page=" & (Page+1) & ">下页</A> " & vbCrLf)
Response.Write("<A HREF=" & action & "?" & temp & "Page=" & pagecount & ">尾页</A> " & vbCrLf)
end if

Response.Write(" 页次:" & page & "/" & pageCount & "页" & vbCrLf)
Response.Write(" 转到" & "<INPUT TYEP=TEXT NAME=page SIZE=1 Maxlength=5 VALUE=" & page & ">" & "页" & vbCrLf & "<INPUT type=submit style=""font-size: 9pt"" value=GO class=b2>")
Response.Write("</TD>" & vbCrLf )
Response.Write("</TR></form>" & vbCrLf )
Response.Write("</table>" & vbCrLf )
End Sub
%></td>
</tr>
</table>
<%
rs.movenext
loop
rs.close
set rs=nothing
cn.close
set cn=nothing
%>

</body>
</html>
俺村我最狠
2009-05-04 · 超过10用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:0
展开全部
你算问对人了.我用下在的方法介绍给你.非常好好.而且简单.

先把这复制下面的代码(原封不动)

fy_get.asp 文件是下面的代码

<%
' ========在包含此段代码前您必须先包含fy_set.asp文件,并准备好以下变量========
' url -> 你要转向的地址,包括参数,如test.asp?id=1留空则默认指向本页
' ===========================================================================
rs.close
response.write "<table width='100%' border='0'><tr style='font-size: 9pt'>"
response.write "<td align='center'>总共找到"+cstr(recordcount)+"条记录 当前第"+cstr(page)+"/"+cstr(pagecount)+"页</td>"
if url="" then
url=Request.ServerVariables("URL")+"?page="
else
url=url+"&page="
end if
response.write "<td align='center'>"
if page=1 then
response.write "<font color='#999999'>首页 上一页 </font>"
else
response.write "<a href='"+url+"1'>首页</a> <a href='"+url+cstr(page-1)+"'>上一页</a> "
end if
pre=page-5
if pre<1 then
pre=1
nex=10
else
nex=page+5
end if
if nex>pagecount then
nex=pagecount
end if
for i = pre to nex
if i=page then
response.write "<font color='#FF0000'>["+cstr(i)+"]</font>"
else
response.write "<a href='"+url+cstr(i)+"'>["+cstr(i)+"]</a>"
end if
next
if page=pagecount then
response.write "<font color='#999999'> 下一页 尾页</font>"
else
response.write " <a href='"+url+cstr(page+1)+"'>下一页</a> <a href='"+url+cstr(pagecount)+"'>尾页</a>"
end if
response.write "</td></tr></table>"
%>

fy_set.asp 文件是下面的代码
<%
' ========在包含此段代码前您必须准备好以下变量========
' conn -> 数据库连接对象,已经打开
' rs -> 记录集,处于关闭状态
' sql -> SQL语句
' pageSize -> 每页要显示的记录条数,如留空默认为10
' ====================================================
if rs.state=1 then rs.close
rs.open sql, conn, 1, 1
If rs.recordcount=0 Then
Response.Write "<center>当前没有任何记录!</center>"
'Response.end
End If
'取得每页显示记录数'
if pagesize="" or (not isnumeric(pagesize)) or pagesize<1 then
pagesize = 15
end if
rs.pagesize = pagesize '定义每页显示的记录数'
recordcount = rs.recordcount '计算总记录数'
pagecount = rs.pagecount '计算一共能分多少页'
'判断当前是第几页'
if request("page")<>"" then
page = cint(request("page"))
if page > pageCount then
page = pageCount
elseif page < 1 then
page = 1
end if
else
page = 1
end if
rs.AbsolutePage = page
n = pagesize
' ====================调用完后请使用如下方法显示数据====================
' 这里写不需要循环显示的数据,如<table>
' while not rs.eof and n>0
' 这里写需要循环显示的数据,如<tr><td>< %=rs(0)% ></td></tr>
' n = n - 1
' rs.movenext
' wend
' 这里写不需要循环显示的数据,如</table>
' ========显示完数据库的内容之后包含fy_get.asp文件,获取页码列表========
%>

下面是调用.
1.在rs.open sql,conn,1,1%>下面写<!--#include file="fy_set.asp"-->
(这里注意一定要写在rs.open后面,而且这里调用是不写在<%%>这里的.这个有基础的都应该知道.)

2.在循环处这么写do while not rs.eof and n>0
也就是说除了正常的循环外加个and n>0

3.在rs.movenext
loop之间这样写
rs.movenext
n=n-1
loop
也就是多了一个n=n-1

4.循环完了之后随便找个地方写这个
<!--#include file="fy_get.asp"-->

完成.是不是非常简单.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ahaoge6901
2009-05-02 · TA获得超过171个赞
知道小有建树答主
回答量:304
采纳率:0%
帮助的人:306万
展开全部
因为你是新手,用你的代码给你来个简单的,以后你慢慢扩展为复杂的分页程序...
<!--#include file="conn.asp"-->
<html>
<head><title>显示留言</title>
<style type="text/css">
<!--
.style2 {
font-size: 16px;
font-weight: bold;
}
-->
</style> </head>
<body>
<table width="300" border="0" align="center">
<tr>
<td align="center"><span class="style2">留言板查看</span></td>
</tr>
</table>
<br>
<br>
<table width="200" border="0" align="center">
<tr>
<td align="center"><a href="feedback.asp">发表留言</a></td>
</tr>
</table>
<br>
<br>
<%
if request.querystring("page")="" then
page=1
else
page=request.querystring("page")
end if
set rs=cn.execute("select * from message order by message_time desc")
%>
<table width="600" border="0" align="center" cellspacing="1" bgcolor="#999999">
<%
rs.PageSize=15 '要求每页显示多少条记录,就改15这个数和下面的I的值就OK了
dim page_total '声明变量总页数
page_total=rs.PageCount'page_total会返回总页数,将在下面输出页码时用到
rs.AbsolutePage=page'设置当前显示第几页,这里用到了传过来的page
Dim I
I=15'I 用来控制显示当前页记录,注意这里和rs.PageSize要一致。
Do While Not rs.Eof And I>0 '循环直到当前页结束或记录集结尾
I=I-1'每显示一条,I减1,当变成0时,表示本页结束
%>

<tr bgcolor="#FFFFFF">
<td width="80"><font size="-1" color="#000099">留言人:</font><%=rs("message_name")%></td>
<td width="400"><font size="-1" color="#000099">留言主题:</font><%=rs("message_theme")%></td>
<td width="120"><font size="-1" color="#000099">留言时间:</font><%=rs("message_time")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3"><textarea cols="100" rows="4" disabled="disabled">留言内容:<%=rs("message_content")%></textarea></td>
</tr>
<%
rs.movenext
loop
%>
<tr bgcolor="#FFFFFF">
<td colspan="3">
<%if page>1 and page<=page_total then%>
<a href="?page=1">首页</a> <a href="?page=<%=page-1%>">上一页</a>|<a href="?page=<%=page+1%>">下一页</a> <a href="?page=<%=page_total%>">尾页</a> 共<%=rs.recordcount%>条留言<%end if%>

</td>
</tr>
</table>
<%

rs.close
set rs=nothing
cn.close
set cn=nothing
%>

</body>
</html>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
改变自己2025
2009-05-04 · TA获得超过1795个赞
知道大有可为答主
回答量:2871
采纳率:0%
帮助的人:0
展开全部
ASP 分页类 Kin_Db_Pager
http://down.chinaz.com/soft/24767.htm

这个很好呀,省事多了,这是我用过最好用的分页类了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式