Avatar billede kovalt Nybegynder
22. oktober 2002 - 22:33 Der er 16 kommentarer og
1 løsning

Udskrivning af poster i 10 stks

Hej

Jeg har et database udtræk, som jeg gerne vil have vist i bundter af 10.....

Jeg viser den i øjeblikket ved hjælp af

while not rs.EOF????

Hvad mangler jeg
Avatar billede hossein Nybegynder
22. oktober 2002 - 22:38 #1
mener du pr side 10 result?
Avatar billede eagleeye Praktikant
22. oktober 2002 - 22:38 #2
Paging.


Jeg kan prøve at uddybe dette eks (http://activedeveloper.dk/aspdigital/kapitel2/paging.asp) lidt:

Du har sikkert din egen SQL-sætning som du bruger til at søge med så den udskrifter du bare den fra ekeemplet:
strSQL = "SELECT LinkURL FROM Links"
med dig egen:
strSQL = DIN SSQL SÆTNING


Så angiver du hvor mange du vil havde på hver side i linier, 10->XX:
    rs.PageSize = 10


Ud skrivning af søge resultet skal gøres inde i det loop der er:
    Do While Not rs.EOF And intRecCount > 0
        Response.Write rs("LinkURL") & "<br>"
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop

Du har sikkert et tilsvarne loop som du udskriver søgeresultatet i idag så du udskirve denne linie:
        Response.Write rs("LinkURL") & "<br>"
Men alle de linier du måtte hvade behov for...



Dette kode laver en liste i bunde med Gå til side 1 2 3 4 osv:
Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
    Response.Write "<a href=paging.asp?page=" & intNum & ">" & intNum & "</a> "
Next


Dette kode lave en links til forrige side via truk på <<:
Response.Write "<p>"
If Clng(intPage) > 1 Then
    Response.Write "<a href=paging.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
    Response.Write "&lt;&lt;"
End If


Dette kode lave en links til næste side via tryk på >>:
If Clng(intPage) < Clng(intPageCount) Then
    Response.Write "<a href=paging.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
    Response.Write "&gt;&gt;"
End If
Avatar billede kovalt Nybegynder
22. oktober 2002 - 22:48 #3
RecCount.... er det en reserveret kommande eller en variabel der bliver defineret andensteds
Avatar billede eagleeye Praktikant
22. oktober 2002 - 22:55 #4
intRecCount  er en variable som bruges til at tælle/begrænse hvor man der skal vises på siden.
Avatar billede eagleeye Praktikant
22. oktober 2002 - 23:10 #5
men du kan copy/paste dette ind i en ny fil http://activedeveloper.dk/aspdigital/kapitel2/paging.asp

Og så tilrette SQL sætnigen og Connection til databasen.
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:21 #6
Dvs. jeg lige skal ha defineret nogle variabler først der hedder:

intPageCount
intPage
intRecCount

eller hvad?
Avatar billede eagleeye Praktikant
22. oktober 2002 - 23:24 #7
Ja hvis det skal være helt rigtigt skal man definere alle sine variable med dim men det bliver defineret så snart man skriver dem.

SQL = "blabla
intPage = request......
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:35 #8
i den linie der hedder:

rs.AbsolutePage = intPage

får jeg en fejl der hedder:

ADODB.Recordset error '800a0bb9'
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another
Avatar billede eagleeye Praktikant
22. oktober 2002 - 23:40 #9
og du har dette med i toppen som hendter hvilken side man er kommet til?

intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:43 #10
Nej det havde jeg ikke.....

Nu kommer denne fejl....

ADODB.Recordset error '800a0cb3'
Current Recordset does not support bookmarks. This may be a limitation of the provider or of the selected cursortype.

... understøtter access-databaser ikke den her funktion eller hvad er det den prøver at sige
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:44 #11
Hvis der ikke er ti poster i DB endnu vil den så også komme med en fejl
Avatar billede eagleeye Praktikant
22. oktober 2002 - 23:45 #12
selv hvis DB'en er tom burgte der ikke komme fejl.
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:45 #13
det har ikke noget at sige at det er en Access-DB
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:47 #14
rs.AbsolutePage = intPage

Current Recordset does not support bookmarks. This may be a limitation of the provider or of the selected cursortype

måske noget der kunne tyde på det?
Avatar billede eagleeye Praktikant
22. oktober 2002 - 23:47 #15
Nej .. men det er vigtigt man bruger rs.Open til at åbne fo rrecordsetet og ikke Set rs = Conn.execute... da paging kun er muligt hvis man bruger rs.Open
Avatar billede kovalt Nybegynder
22. oktober 2002 - 23:53 #16
Hvis jeg lige må forstyrre en sidste gang med to spørgsmål:

1. hvad er forskellen på rs.Open og set rs

2. hvad betyder 1-tallet i: rs.Open strSQL, strDNS, 1

Det virker nu - 1000 tak for hjælpen
Avatar billede eagleeye Praktikant
23. oktober 2002 - 00:02 #17
1. Det er to forskellige måder at åbne et recordset på.

2. se mere her: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/adoce31/html/ado30ref_28.asp
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