Avatar billede perstig Nybegynder
05. januar 2007 - 20:44 Der er 1 kommentar og
1 løsning

Paging 3x3 på hver side

Jeg har 2 stumper kode som hverisær gør hver det de skal, men samme kan jeg ikke få det til at virke.

Og det jeg vil er at jeg har et recordset med x antal records. Disse records vil jeg gerne have vist med max 9 på hverside, 3 rækker med 3 ihver.

Først har jeg noget kode til paging (snuppet fra activedeveloper.dk):

                                    Dim intPage, intRecCount, intPageCount, intNum

                                    intPage = Request("page")
                                    If isNumeric(intPage) = False Or intPage < 1 Then
                                      intPage = 1
                                    End If

                                    If Not (resBruger.BOF And resBruger.EOF) Then
                                      resBruger.PageSize = 3
                                      resBruger.AbsolutePage = intPage
                                      intRecCount = resBruger.PageSize
                                      intPageCount = resBruger.PageCount
                                      Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
                                      Do While Not resBruger.EOF And intRecCount > 0
                                        Response.Write "<p>Gå til side "
                                        For intNum = 1 To intPageCount
                                          Response.Write "<a href=brugerprofil.asp?page=" & intNum & ">" & intNum & "</a> "
                                        Next

                                        Response.Write "<p>"
                                        If Clng(intPage) > 1 Then
                                          Response.Write "<a href=brugerprofil.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
                                        Else
                                      Response.Write "&lt;&lt;"
                                        End If

                                        Response.Write "&nbsp;"

                                        If Clng(intPage) < Clng(intPageCount) Then
                                          Response.Write "<a href=brugerprofil.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
                                        Else
                                          Response.Write "&gt;&gt;"
                                        End If


Også har jeg noget kode som henter det der skal, men med max 3 i hver rækker.
Det jeg får nu er alle records ordnet i rækker med 3.

                                Dim a, i

                                    i = 1
                                    If IsArray(arrProfil) Then
                                        For a = 0 To uBound(arrProfil,2)
                                            Response.Write("<td width='33%' align='center'")%>
                                                <td align="center"><a href="brugerprofil.asp?Profil=<%=arrProfil(0,a)%>"><img src="<%=arrprofil(27,a)%>" width="140" height="200" align="bottom" alt="Foto af <%=arrProfil(3,a)%>&nbsp;<%=arrProfil(5,a)%>"><br>Klik for at se profil</a></td>
                                <%
                                        If i mod 3 = 0 Then
                                            Response.Write("</tr><tr>")
                                        End If
                                        i = i + 1
                                        Next
                                    End If

Der der driller er den dynamiske opbygning af tabellen
Avatar billede madeindk Nybegynder
05. januar 2007 - 22:58 #1
<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

If Not (resBruger.BOF And resBruger.EOF) Then

Response.Write("<table cellpadding=""0"" cellspacing=""0"" style=""width:100%;"">")

resBruger.PageSize = 3
resBruger.AbsolutePage = intPage
intRecCount = resBruger.PageSize
intPageCount = resBruger.PageCount
Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"

Do While Not resBruger.EOF And intRecCount > 0

    strCount = strCount + 1
   
    If Cint(strCount) = 1 Then
      Response.Write("<tr>")
    End If
   
    Response.Write("<td style=""width:33%;"">Bom bom</td>")
   
    If Cint(strCount) = 3 Then
      Response.Write("</tr>")
      strCount = 0
    End If

    intRecCount = intRecCount - 1

rs.movenext
loop

Response.Write("</table>")

' Her kommer dit paging system nu
Response.Write "<p>Gå til side "

For intNum = 1 To intPageCount
  Response.Write "<a href=brugerprofil.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
  Response.Write "<a href=brugerprofil.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
  Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write "<a href=brugerprofil.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
  Response.Write "&gt;&gt;"
End If
%>
Avatar billede madeindk Nybegynder
05. januar 2007 - 23:01 #2
Har lige lavet en mindre rettlese her, håber du kan bruge det. Har lagt dit forrige og næste side nede i bunden, det synes jeg er mere normalt. Men du kan sagtens flytte det op, hvis du har lyst.

<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

If Not (resBruger.BOF And resBruger.EOF) Then

Response.Write("<table cellpadding=""0"" cellspacing=""0"" style=""width:100%;"">")

resBruger.PageSize = 3
resBruger.AbsolutePage = intPage
intRecCount = resBruger.PageSize
intPageCount = resBruger.PageCount
Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"

Do While Not resBruger.EOF And intRecCount > 0

    strCount = strCount + 1
   
    If Cint(strCount) = 1 Then
      Response.Write("<tr>")
    End If
   
    Response.Write("<td style=""width:33%;"">Bom bom</td>")
   
    If Cint(strCount) = 3 Then
      Response.Write("</tr>")
      strCount = 0
    End If

    intRecCount = intRecCount - 1

rs.movenext
loop

    If Cint(strCount) <> 0 Then
   
        For MakeTD = 1 To strCount
          Response.Write("<td style=""width:33%;"">&nbsp;</td>")
        Next
   
    End If

Response.Write("</table>")

' Her kommer dit paging system nu
Response.Write "<p>Gå til side "

For intNum = 1 To intPageCount
  Response.Write "<a href=brugerprofil.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
  Response.Write "<a href=brugerprofil.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
  Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write "<a href=brugerprofil.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
  Response.Write "&gt;&gt;"
End If
%>
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