Avatar billede whyme Nybegynder
19. august 2005 - 21:51 Der er 8 kommentarer og
1 løsning

Paging eller sidevisning

Jeg har følgende kode:

$get = mysql_query("SELECT * FROM tablenavn ORDER BY dato ASC LIMIT 0,10") or die(mysql_error());

Jeg vil gerne have at den viser 10 resultater pr. side den kode jeg skal til at lave.

Dvs. den skal tage de første 10 og vise frem med ovenstående kode. - det gør den også fint nok.

Nu vil jeg gerne se næste side, og slutter med LIMIT 10,20

Men nu viser den bare 20 poster (10 første og de 10 næste nu) og ikke poster fra 10 til 20 men alle poster...

Hvordan kan det være?

Mener ikke jeg har lavet nogen stavefejl eller noget...

Er der nogen der kan være behjælpelige.
Avatar billede ai_rayzor Nybegynder
19. august 2005 - 22:01 #1
Avatar billede whyme Nybegynder
19. august 2005 - 22:06 #2
Jeg leder ikke efter en guide, dem er der nok af - leder efter en forklaring, fordi det virker jo ikke hos mig...
ai_rayzor: det der står i guiden er eksempelvis:
$query = mysql_query ("SELECT * FROM table ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());

Det er den samme kode som jeg bruger... men det er som om "$vis_fra" ikke bliver "set"
Avatar billede ai_rayzor Nybegynder
20. august 2005 - 01:27 #3
giv mig en adresse til dit script, og lav dine php filer om til .phps (så kan alle se sourcen og de bliver ikke kompileret af parseren), så lister du dem lige her med links, så kigger jeg på dem når jeg står op i morgen.

Men for så vidt ser koden du bruger ovenover rigtig nok ud, men får du talt posterne i din tabel?

kig lige på det link jeg smed ind før, i min første post, og vurder om du gør noget galt, for du nævner intet om at du tæller antallet af poster/felter i din tabel.
Avatar billede whyme Nybegynder
20. august 2005 - 01:51 #4
Jeg tæller ingen poster i tabellen, men det burde kun være nødvendig hvis jeg skal lave "side1, side2, side3" osv... jeg skal kun lave forrige og næste...
Men det ligner at den er okay nu... så prøver lige at køre lidt med den.
Avatar billede fixxxer Nybegynder
22. august 2005 - 02:43 #5
$get = mysql_query("SELECT * FROM tablenavn ORDER BY dato ASC LIMIT 0,10") or die(mysql_error());

$get = mysql_query("SELECT * FROM tablenavn ORDER BY dato ASC LIMIT 10,10") or die(mysql_error());

$get = mysql_query("SELECT * FROM tablenavn ORDER BY dato ASC LIMIT 20,10") or die(mysql_error());

$get = mysql_query("SELECT * FROM tablenavn ORDER BY dato ASC LIMIT 30,10") or die(mysql_error());

Get the picture? :)
Avatar billede ai_rayzor Nybegynder
22. august 2005 - 10:12 #6
Den fulde kode kunne være meget rar hvis vi skal kunne hjælpe dig, ellers lidt som at skyde huller i en tåge med en ærtebøsse ;)
Avatar billede whyme Nybegynder
22. august 2005 - 10:51 #7
Den ser ud til at virke helt fin :)

Kom med et svar begge to :)
Avatar billede fixxxer Nybegynder
22. august 2005 - 13:15 #8
Jeg springer over..
Avatar billede ai_rayzor Nybegynder
22. august 2005 - 21:37 #9
tak for point :) - selvom det egentlig ikke var nødvendigt :)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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