ASP把从数据库中读出记录并在页面上分页显示,求解答!

发布网友 发布时间:2022-04-23 06:38

我来回答

1个回答

热心网友 时间:2022-04-10 05:42

给你个asp分页的!我刚做过!保证可以用!
1.首先,你把以下代码拷到fanye.asp中
<%
'定义每页显示数目
const maxperpage=6
rs.pagesize=maxperpage

'记录总数
totalput=rs.recordcount

'显示第几页
Page = CLng(Request("Page"))

'总共页数
if(totalput mod maxperpage=0) then
n=totalput\maxperpage
else
n=totalput\maxperpage+1
end if

'排除page为空,page>总页数情况
if request("page")<>"" then
currentpage=cint(request("page"))
if currentpage>rs.pagecount then
currentpage=rs.pagecount
end if
else
currentpage=1
end if

if currentpage<>1 then
if(currentpage-1)*maxperpage<totalput then
rs.move(currentpage-1)*maxperpage
end if
end if

%>

2.在你分页的页面里 找到你的循环部分,把一下代码写在要循环的内容的上面。这个不能照搬照抄,那些表面啊,字段名都要改掉。
<%
if(trim(request("class_id"))<>"") then
session("class_id")=trim(request("class_id"))
end if

set rs = server.createobject("adodb.recordset")
sql="select * from t_food where Bclass_id like '"&session("class_id")&"' "
rs.open sql,conn,1,1
%>

<!--#include file="fanye.asp"-->
<% if not(rs.bof and rs.eof) then
food_id=rs("food_id")
%>

<%
i=0
do while not rs.eof and i<maxperpage
if i mod 3=0 then
response.Write "</tr><tr>"
end if
%>

3.再把一下代码写在要循环的内容的下面。这个不能照搬照抄,那些表面啊,字段名都要改掉。
<%
i=i+1
rs.movenext
loop
else
response.Write("暂无子类")
end if
%>

4.最后在最下面放以下内容
<table align="center">
<tr>
<td class="font_foot1">
第<%=page%>页/共<%=rs.pagecount%>页 
每页显示<%=rs.pagesize%>条记录  总共<%=rs.recordcount%>条记录  </label>
<%if currentpage=1 then%>
首页 上一页
<%else%>
<a href="?page=1">首页</a> <a href="?page=<%=currentpage-1%>">上一页</a>
<%end if%>
<%if currentpage=n then%>
下一页 尾页
<%else%>
<a href="?page=<%=currentpage+1%>">下一页</a> <a href="?page=<%=n%>">尾页</a>
<%end if%>
</td>
</tr>
</table>

5.完成啦!保证你可以用,前提是要把字段名,表面都改掉哦!千万不要照搬照抄,要学以致用。好好看下吧!

access数据库名最好不要中文吧!还有你最好把
set conn = Server.Createobject("adodb.connection")
conn.connectionstring = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath("电影网站.mdb")
这两句话放到conn里。每次要用的时候就不要重复写了,之间调用就可以了哦!

亲,要是还有什么不会的!就再来问我好了!那先这样!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com