Gå til innhold

Veldig enkelt pagination script


Anbefalte innlegg

Hei, prøver å lage verdens enkleste pagination, men enkelt blir fort vanskelig.

 

koden min:

 

		$per = 10;
		if(isset($_GET['page']))	{
		$page = ($_GET['page'] * $per);
		$denne = ($_GET['page'] * $per) - $per;

		$query = sprintf("SELECT * FROM `posts` ORDER BY `id` DESC LIMIT %s,%s",
			$denne,
			$page);
		} else {
		$query = sprintf("SELECT * FROM `posts` ORDER BY `id` DESC LIMIT 0, $per");
		}

 

- Den er bygd så hvis page = 1, henter den ut 0,10, hvis page = 2 henter den ut 10, 20 - og jeg vet den får disse tallene (jeg printer ut $denne og $page vær gang. )

 

men page = 1 funker, men alt over page = 2 funker ikke!

 

Noen som vet hva som kan være galt?

 

Det er kun page = 2 jeg får dette problemet med. ikke page = 3, eller page = 4

Endret av Sk!ppy
Lenke til kommentar
Videoannonse
Annonse

Forresten, ser feilen din. Den siste variablen i spørringen skal bare fortelle hvor mange elementer du skal ha med i resultatet.

 

Når page = 1 blir det 10, men når page = 2 ønsker du å hente ut 20 resultater, så blir det 30 osv.

 

Denne variabelen skal være $per

 

$sporring = "SELECT * FROM table LIMIT $denne, $per";

 

Du har gjort det riktig i den nederste spørringen :)

Endret av TheClown
Lenke til kommentar

Løste det ved denne jeg :)

 

$max = 'LIMIT ' .($paage - 1) * $per .',' .$per;

 

Sorry jeg ikke svarte før nå, har spist.

 

Nå skal jeg finne en for kode som lister opp alle sidene :)

 

eller, 3 sider før, og 3 sider etter den siden du er på.

Endret av Sk!ppy
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...