主题:  分页显示???

zzyhero2000

职务:普通成员
等级:1
金币:1.0
发贴:144
#12002/10/28 13:12:49
那位大侠,能给一份从数据库中调资料,分页显示的例子呀???
多谢?急用!!!
zyhero2000@163.com



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
#22002/10/28 13:22:28
<%
    set conn=server.createobject("adodb.connection")
conn.open "连接字符串"
    area=Request.QueryString("area")
    sql="查询语句 "    
set rs=server.CreateObject("adodb.recordset")
rs.open sql,conn
                                                    
        if request("page")="" then
         curpage=1
        else
         curpage=cint(request("page"))
        end if
        rs.pagesize=20
        rs.absolutepage=curpage            
        for i = 1 to rs.pagesize
    
%>
'循环操作
<%
rs.MoveNext
if rs.eof then
         i = i + 1
            exit for
            end if
next%>

当前第<%=curpage%>页 共<%=rs.PageCount%>页
<%if curpage<>1 then%>&area=<%=area%>>上一页<%end if%>

                                                                <%if curpage<> rs.PageCount then%>
                                                                &area=<%=area%>>下一页<%end if%>



5D荣誉斑竹

职务:普通成员
等级:3
金币:10.0
发贴:1480
#32002/10/28 15:01:57
dtmyou??这段代码是你写的吗?
你水平不错,不过代码不规范哦.
最好能有大小写.
比如
Set rs = Server.CreateObject("ADODB.RecordSet")
还有少一点<%%>,<%=%>的分割符号,
尽量写在一块<%%>里面.这样增强代码的可读性.

;) ;)



绿茶

职务:普通成员
等级:8
金币:10.0
发贴:19267
#42002/10/28 15:15:31





[共 <%=rs.recordcount%> 条记录,第 <%=page%> 页,共 <%=rs.pagecount%> 页]
<%
if page=1 then
    response.write "[首页|上一页"
else
    response.write "[首页上一页"
end if
%> <%
if page=rs.pagecount then
    response.write "|下一页|尾页]"
else
    response.write "|下一页尾页]"
end if
%> 现第<%=page%>页  转到第





绿茶

职务:普通成员
等级:8
金币:10.0
发贴:19267
#52002/10/28 15:19:44
page=1

If request("page")="" Then
Page=1
Else
Page=Int(Abs(Request("page")))
End if
rowcount=25
pageshowsize=9 '每页显示的分页数,分页数为pageshowsize+1
....'这里执行数据库语句
url="reglist.asp?search="&search&"&province="&province&"&city="&city&"&isadvan="&isadvan
...
%>
....

<%
response.write "记录数:"
response.write objrst.recordcount
if totalpage>1 then
         response.write ",每页显示记录:"&rowcount&",页次:"&page&"/"&totalpage&",分页:"
if totalpage<=pageshowsize then
for ss=1 to totalpage
response.write ""
if ss=page then
response.write ""&ss&""
else
response.write ss
end if
response.write "
"
if ss<> totalpage then response.write " "
next

end if
if totalpage>pageshowsize then
if request("prevpage")="" then
prevpage=1
else
prevpage=trim(request("prevpage"))
end if
' response.write "首页"
if prevpage+pageshowsize nextpage=prevpage+pageshowsize
else
nextpage=totalpage
end if
if prevpage>1 then response.write "<<"
for ss=prevpage to nextpage

response.write ""
if ss=page then
response.write ""&ss&""
else
response.write ss
end if
response.write "
"
if ss<> nextpage then response.write " "
next

if totalpage>prevpage+pageshowsize then response.write ">>"
tt=int(totalpage/pageshowsize)
end if
end if %>

绿茶

职务:普通成员
等级:8
金币:10.0
发贴:19267
#62002/10/28 15:22:53



                    >
                    >
                    >




<%if rs.recordcount<>0 then
tempval=""
response.write "  第"&page&"页/共"&rs.pagecount&"页"
If page <> 1 Then
            tempVal=tempVal&"[首页] "&vbcrlf
            tempVal=tempVal&"[上一页]"&vbcrlf
        End If
        If page <> rs.pagecount Then
            tempVal=tempVal&"[下一页]"&vbcrlf
            tempVal=tempVal&"[尾页]"&vbcrlf
        End If
        tempVal=tempVal&"  转到  页 " &vbcrlf
        tempVal=tempVal&""

        response.write tempval
        end if
%>





绿茶

职务:普通成员
等级:8
金币:10.0
发贴:19267
#72002/10/28 15:25:24
PageShowSize = 10 '每页显示多少个页
MyPageSize = 20 '每页显示多少条新闻
    
If Not IsNumeric(Request("page")) Or IsEmpty(Request("page")) Or Request("page") <=0 Then
MyPage=1
Else
MyPage=Int(Abs(Request("page")))
End if
....

第 <%=Mypage%>/<%=Maxpages%> 页,每页 <%=MyPageSize%>

<%
url="Special.asp?"
PageNextSize=int((MyPage-1)/PageShowSize)+1
Pagetpage=int((total-1)/Rs2.PageSize)+1

if PageNextSize >1 then
PagePrev=PageShowSize*(PageNextSize-1)
Response.write "上一翻页 "
Response.write "页首 "
end if
if MyPage-1 > 0 then
Prev_Page = MyPage - 1
Response.write "上一页 "
end if

if Maxpages>=PageNextSize*PageShowSize then
PageSizeShow = PageShowSize
Else
PageSizeShow = Maxpages-PageShowSize*(PageNextSize-1)
End if
If PageSizeShow < 1 Then PageSizeShow = 1
for PageCounterSize=1 to PageSizeShow
PageLink = (PageCounterSize+PageNextSize*PageShowSize)-PageShowSize
if PageLink <> MyPage Then
Response.write "[" & PageLink & "] "
else
Response.Write "["& PageLink &"] "
end if
If PageLink = MaxPages Then Exit for
Next

if Mypage+1 <=Pagetpage then
Next_Page = MyPage + 1
Response.write "下一页"
end if

if MaxPages > PageShowSize*PageNextSize then
PageNext = PageShowSize * PageNextSize + 1
Response.write " 页尾"
Response.write " 下一翻页"
End if

                
End If
Rs2.close

%>

这是不同的分页代码,自己去研究一下吧



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
#82002/10/28 18:33:09
多谢deep大哥夸奖罗,当然是偶自个写的了
至于代码不规范,其实偶风格蛮好的,呵呵