Avatar billede Laitings Nybegynder
09. maj 2002 - 22:29 Der er 7 kommentarer og
2 løsninger

vis kun 10 poster. Link til næste 10

Jeg har en Accessdatabase som indeholde et bestemt antal poster.

Hvordan laver jeg en SQL sætning som kun viser 10 poster og derefter viser et link til de næste 10 og de næste 10 osv. Ligesom side 1, 2, 3 osv?

Den er lidt for tricky til mig!

Håber på hjælp!

-Mescalito
Avatar billede hotcut Nybegynder
09. maj 2002 - 22:29 #1
www.activedeveloper.dk
søg efter "pageing" og du finder tonsvis af eksempler :)
Avatar billede eagleeye Praktikant
09. maj 2002 - 22:31 #2
Avatar billede avlund Nybegynder
09. maj 2002 - 22:33 #3
Brug SQL = "SELECT navn FROM poster ORDER BY id LIMIT" & Request.QueryString("nummer") & ",10" som SQL-sætning.

dine links skal så være:

<a href="side.asp?nummer=<% =( Request.QueryString("nummer") - 10 ) %>">tilbage</a>

og

<a href="side.asp?nummer=<% =( Request.QueryString("nummer") + 10 ) %>">frem</a>

Måske skal den QueryString lige laves om med en Cint, det kan jeg ikke huske.
Avatar billede brideonline.dk Nybegynder
09. maj 2002 - 22:33 #4
paging er rigtig rart! - bare en lille bemærkning :)
Avatar billede whatever Nybegynder
09. maj 2002 - 22:57 #5
avlund > LIMIT virker ikke i Access.
Avatar billede eagleeye Praktikant
09. maj 2002 - 23:01 #6
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:
    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


Jeg håber det giver lidt ekstra hjælp ellers så bare spørg igen.
Avatar billede Laitings Nybegynder
09. maj 2002 - 23:07 #7
Tak for alle besvarelserne! Stor hjælp! Beklager den lange ventetid...skulle lige ha' skidtet til at virke! Hvilket det i øvrigt gør helt forrygende!

Der bliver delt lidt ud af pointsne, men jeg har sparet lidt på din hotcut! Ikke at det ikke var en god hjælp! :)

Tak for uddybningen EagleEye, supercool!!

Ja og så props til Dennis Knappe, for den fede artikel på AD.dk

-M
Avatar billede avlund Nybegynder
09. maj 2002 - 23:10 #8
LIMIT virker ikke i Access?!? Skandale. Opgradér til en ordentlig database!!! :)
Avatar billede whatever Nybegynder
09. maj 2002 - 23:15 #9
avlund > jeg bruger normalt selv mysql, og så har man jo ikke det problem :-)
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