Avatar billede ravnkilde Nybegynder
30. april 2003 - 16:30 Der er 2 kommentarer og
1 løsning

Paging fra Access database

Hej!

Nedenstående kode trækker data ud fra en Access database og placerer disse i en tabel til brug ved udskrift af labels. Løsningen er dog uhensigtsmæssigt, og jeg ønsker i stedet at bruge paging, bl.a. for bedre at styre udskriften på de omtalte labels.

Jeg ønsker maks. 8 records pr. side fordelt på en tabel bestående af to kolonner á fire rækker.

Efter tabellen skal det være muligt at klikke sig videre til siderne med data (f.eks. "Gå til side 2,3,4").

Hjælp til "ombrydning" af min nuværende kode ønskes.

-- start på min kode --

<%
' Forbindelse til databasen
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../../../../../db/college.mdb")
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * from STUDENTS WHERE Incentives_sent='No' AND Login_start='4' AND Country='Norway'"

' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

%><%
' Check om recordsettet er tomt
If (rs.BOF AND rs.EOF) Then
Response.Redirect "no_data.html"
ELSE
%>

<html>

    <title></title>
       
    <header>Labels</header>

    <body bgcolor="#ffffff" leftmargin="0" marginwidth="0" topmargin="0" marginheight="0">
        <table width="715" border="0" cellspacing="0" cellpadding="0">
            <%  DO WHILE NOT rs.EOF %>
            <tr>
                <td width="5" height="50"><img src="images/clear-1x1.gif" width="5" height="50" border="0"></td>
                <td width="335" height="50"><img src="images/clear-1x1.gif" width="335" height="1" border="0"></td>
                <td width="45" height="50"><img src="images/clear-1x1.gif" width="45" height="1" border="0"></td>
                <td width="335" height="50"><img src="images/clear-1x1.gif" width="335" height="1" border="0"></td>
                <td width="5" height="50"><img src="images/clear-1x1.gif" width="5" height="1" border="0"></td>
            </tr>
            <tr>
                <td width="5" height="164"><img src="images/clear-1x1.gif" width="5" height="164" border="0"></td>
                <td width="335" height="164"><%=rs("Name")%><br><%=rs("Pharmacy")%><br><%=rs("Street")%><br><%=rs("City")%> &nbsp;<%=rs("Postal_code")%><br>
                    <%=rs("Country")%><br>
                </td>
                <td width="45" height="164">&nbsp;</td>
                <td width="335" height="164"><% rs.moveNext%><%if  NOT rs.EOF then%><%=rs("Name")%><br><%=rs("Pharmacy")%><br><%=rs("Street")%><br><%=rs("City")%>&nbsp;<%=rs("Postal_code")%><br>
                    <%=rs("Country")%><br>
                    <br>
                    <%
    rs.moveNext
  End if

  %></td>
                <td width="5"></td>
            </tr>
            <tr>
                <td width="5" height="28"><img src="images/clear-1x1.gif" width="5" height="28" border="0"></td>
                <td width="335" height="28">&nbsp;</td>
                <td width="45" height="28">&nbsp;</td>
                <td width="335" height="28">&nbsp;</td>
                <td width="5" height="28">&nbsp;</td>
            </tr>
            <% LOOP%><%
End If
%>
        </table>
    </body>

</html>
<%
' Luk forbindelse til database
Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>

-- slut på min kode --
Avatar billede medions Nybegynder
30. april 2003 - 16:36 #1
Avatar billede nogetfx Nybegynder
30. april 2003 - 18:31 #2
Hvis du tager den som Medions skriver, og det burde du.. hehe

Så er her pile istedet for alkle de tal, de ser pænere ud:

                If Clng(Page) > 1 Then
                            Response.Write "<a href=""view.asp?act=show&id=" & StrId & "&cat=" & StrCat & "&page=" & Page - 1 &_
                            """' onMouseOver=""window.status='Forrige side';return true""" &_
                            "onMouseOut=""window.status='Forrige side';return true""" &_
                            " onClick=""window.status='Forrige side';return true"">"  &_
                            "&lt;&lt; Forrige side</a>"
                End If

    Response.Write "&nbsp;&nbsp;"

    If Clng(Page) < Clng(rs.PageCount) Then
        Response.Write "<a href=""view.asp?act=show&id=" & StrId & "&cat=" & StrCat & "&page=" & Page + 1 &_
                            """' onMouseOver=""window.status='N&aelig;ste side';return true""" &_
                            "onMouseOut=""window.status='N&aelig;ste side';return true""" &_
                            " onClick=""window.status='N&aelig;ste side';return true"">"  &_
                            "N&aelig;ste side &gt;&gt;</a>"
    End If <%
Avatar billede medions Nybegynder
19. juni 2003 - 16:12 #3
Thx 4 Poinz

//>Rune
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