Avatar billede lund_dk Praktikant
09. oktober 2007 - 12:16 Der er 3 kommentarer og
1 løsning

MySQL Pagning - kan du gøre det pænere

Jeg har slam-kodet et pagning system, som på ingen måde er acceptabelt og efter bogen.

Men nogen der måske vil kigge på det, og omskrive det til noget pænere?

Min kode:
        <%
        pageSize = strPageCount
        currentPage = 0
        if isnumeric(Request.querystring("Page")&"") then currentPage = cInt(Request.querystring("Page"))
        set rsDesign = conn.execute("SELECT * FROM designs WHERE godkendt = 1 ORDER BY " & sqlSort & " LIMIT "& currentPage &","& pageSize &"")       
        do while not rsDesign.eof
%>
min recordset
<%       
rsDesign.MoveNext
      loop
        Set rsDesign=Nothing
%>






<%
set rs = conn.execute("select count(*) AS Antal from designs where godkendt = 1")
strAntal = rs("antal")
rs.close
set rs = nothing

strAntalSider = cInt(strAntal)/cInt(pageSize)
%>

<table class="box" cellpadding="0" cellspacing="1">
    <tr>

<% for i = 0 to strAntalSider%>
    <%if cInt(pageSize)*cInt(i) = currentPage then%>
        <td width="40"><b><%=i+1%></b></td>
        <%else%>
        <th width="40"><a href="./?s=Kat&id=<%=id%>&Page=<%= cInt(pageSize)*cInt(i)%>"><%=i+1%></a></th>
        <%end if%>
    <%next%>
    </tr>
</table>

<table class="box" cellpadding="0" cellspacing="1">
    <tr>
        <%if CurrentPage > 0 then%>
        <th width="40"><a href="./?s=Kat&id=<%=id%>&Page=<%= currentPage-pageSize %><%=sortNavi%><%=sortPageCount%>">prev</a></th>
        <%end if%>
        <th style="text-align:center;">Side <%=currentPage/10+1%> af <%=formatnumber(cInt(strAntal)/cInt(pageSize)+1,0)%></th>
        <th width="40"><a href="./?s=Kat&id=<%=id%>&Page=<%= currentPage+pageSize %><%=sortNavi%><%=sortPageCount%>">next</a></th>
    </tr>
</table>
Avatar billede lund_dk Praktikant
09. oktober 2007 - 12:18 #1
Og hvis det kunne lade sig gøre at Page blev 1,2,3,4 osv, og ikke som nu
0,10,20,30,40 osv
Avatar billede lund_dk Praktikant
09. oktober 2007 - 12:26 #2
Skal lige siges der er MySQL - og ønsker ikke henvisninger til andre scripts, vil gerne beholde det jeg har lavet her :)
Avatar billede lund_dk Praktikant
09. oktober 2007 - 12:37 #3
Og en lille fejl er fundet, eks har jeg 61 poster, og står på side 6, får jeg ikke den sidste post med
Avatar billede lund_dk Praktikant
26. april 2012 - 08:38 #4
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester