Gå til innhold

Veldig enkelt pagination script


Anbefalte innlegg

Skrevet (endret)

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
Videoannonse
Annonse
Skrevet

Slik har jeg gjort det:

 

$pageNumber = (isset($_GET["page"]) && is_numeric($_GET["page"])) ? $_GET["page"] : 1;
$perPage = 15;
$startIndex = ($pageNumber * $perPage) - $perPage;

Skrevet (endret)

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
Skrevet (endret)

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

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å
×
×
  • Opprett ny...