Avatar billede jolo Nybegynder
23. april 2001 - 10:59 Der er 7 kommentarer og
1 løsning

udtræk fra database

Jeg har følgende kode der henter data fra en database, den deler dem op og henter 10 poster ad gangen så man kan klikke på ex. side 2 og de næste 10 poster vises. Det jeg godt kunne tænke mig er at istedet for at man kan vælge mellem siderne vil jeg gerne have at der står fra nr 1-10, nr 11-20 osv. da det er nummeret jeg søger på når jeg skal finde en person er det muligt?
Her er koden:
<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from medlemmer\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"mk.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\"
    Do While Not rs.EOF And intRecCount > 0
%>
<div align=\"center\">
<center>
<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
<tr>
<td width=\"50%\"><%=rs(\"nr\")%></td>
<td width=\"50%\"><%=rs(\"email\")%></td>
</tr>
<%
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
End If
rs.Close
Set rs = Nothing
Response.Write \"<p>Gå til side \"
For intNum = 1 To intPageCount
    Response.Write \"<a href=side.asp?page=\" & intNum & \">\" & intNum & \"</a> \"
Next
Response.Write \"<p>\"
If Clng(intPage) > 1 Then
    Response.Write \"<a href=side.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=side.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
    Response.Write \"&gt;&gt;\"
End If
%>
</body>
</html>
Avatar billede kasseper Nybegynder
23. april 2001 - 11:06 #1
<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from medlemmer\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"mk.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\"
    Do While Not rs.EOF And intRecCount > 0
%>
<div align=\"center\">
<center>
<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
<tr>
<td width=\"50%\"><%=rs(\"nr\")%></td>
<td width=\"50%\"><%=rs(\"email\")%></td>
</tr>
<%
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
End If
rs.Close
Set rs = Nothing
Response.Write \"<p>Gå til : \"
For intNum = 1 To intPageCount
    Response.Write \"<a href=side.asp?page=\" & intNum & \">\" & intNum & \" - \" & intNum * 10 & \"</a> \"
Next
Response.Write \"<p>\"
If Clng(intPage) > 1 Then
    Response.Write \"<a href=side.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=side.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
    Response.Write \"&gt;&gt;\"
End If
%>
</body>
</html>


tror jeg nok gør det du vil...Måske
Avatar billede jolo Nybegynder
23. april 2001 - 11:20 #2
ja, nemlig - men den skal ikke skrive 1-10 2-20
3-30, den skal vælge posterne i databasen der har numeret mellem 1-10,det er er rigtigt nok, men den næste skulle gerne finde de poster med nummeret mellem 11-20. Nu ved jeg ikke om du jar prøvet at køre det men en anden sjov fejl jeg har er at når den skal vise posterne kommer de 9 rigtigt nok dernæst kommer der linket til de andre sider og underligt nok står den tiende post under her altså uden for tabellen?
Avatar billede kasseper Nybegynder
23. april 2001 - 12:10 #3
Nå ja, men så må det jo være.....:

<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from medlemmer\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"mk.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\"
    Do While Not rs.EOF And intRecCount > 0
%>
<div align=\"center\">
<center>
<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
<tr>
<td width=\"50%\"><%=rs(\"nr\")%></td>
<td width=\"50%\"><%=rs(\"email\")%></td>
</tr>
<%
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
End If
rs.Close
Set rs = Nothing
Response.Write \"<p>Gå til : \"
For intNum = 1 To intPageCount
    Response.Write \"<a href=side.asp?page=\" & intNum & \">\" & ((intNum - 1) * 10) + 1 & \" - \" & intNum * 10 & \"</a> \"
Next
Response.Write \"<p>\"
If Clng(intPage) > 1 Then
    Response.Write \"<a href=side.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=side.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
    Response.Write \"&gt;&gt;\"
End If
%>
</body>
</html>
Avatar billede kasseper Nybegynder
23. april 2001 - 12:13 #4
og det med den mærkelige tabel, det må da være noget med at man looper over <table taget....
Prøv lige denne her :

<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from medlemmer\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"mk.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\"
%>
<div align=\"center\">
<center>
<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
<%
    Do While Not rs.EOF And intRecCount > 0
%>
<tr>
<td width=\"50%\"><%=rs(\"nr\")%></td>
<td width=\"50%\"><%=rs(\"email\")%></td>
</tr>
<%
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
    End If
    rs.Close
    Set rs = Nothing
%>
</table>
<%
Response.Write \"<p>Gå til : \"
For intNum = 1 To intPageCount
    Response.Write \"<a href=side.asp?page=\" & intNum & \">\" & ((intNum - 1) * 10) + 1 & \" - \" & intNum * 10 & \"</a> \"
Next
Response.Write \"<p>\"
If Clng(intPage) > 1 Then
    Response.Write \"<a href=side.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=side.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
    Response.Write \"&gt;&gt;\"
End If
%>
</body>
</html>
Avatar billede darkhero Nybegynder
23. april 2001 - 19:33 #5
og det med den mærkelige tabel, det må da være noget med at man looper over <table taget....
Prøv lige denne her :

<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from medlemmer\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"mk.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\"
%>
<div align=\"center\">
<center>
<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
<%
    Do While Not rs.EOF And intRecCount > 0
%>
<tr>
<td width=\"50%\"><%=rs(\"nr\")%></td>
<td width=\"50%\"><%=rs(\"email\")%></td>
</tr>
<%
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
    End If
    rs.Close
    Set rs = Nothing
%>
</table>
<%
Response.Write \"<p>Gå til : \"
    Response.Write \"<a href=side.asp?page=\" & intPage +1 & \">\" & (intpage * 10) + 1 & \" - \" & intpage * 10 + 10 & \"</a> \"
Next
Response.Write \"<p>\"
If Clng(intPage) > 1 Then
    Response.Write \"<a href=side.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=side.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
    Response.Write \"&gt;&gt;\"
End If
%>
</body>
</html>
Avatar billede www.triffid.dk Nybegynder
24. april 2001 - 09:10 #6
._:_.
Avatar billede jolo Nybegynder
24. april 2001 - 17:42 #7
Alletiders - Tusind tak
Avatar billede jolo Nybegynder
24. april 2001 - 17:42 #8
Alletiders - Tusind tak
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