• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Pagination

Tronjer

Senior HTML'ler
Mal angenommen, ich hätte ein Datenbank Query, das 201 Einträge liefert, von denen jeweils 10 auf einer Seite angezeigt werden sollen und möchte damit eine Pagination bauen, die so aussieht:

Seite1 Seite2 Seite 3 .... Seite21

Also vomr Prinzip her: Erzeuge für die ersten 3 x 10 Einträge jeweils einen Container (Seite1, Seite2, ...), füge anschließend einen weiteren Container mit drei Punkten hinzu und zum Schluss noch einen für die letzten 1-9 Einträge.

Wie wäre da die Logik in der foreach-Schleife? Ich habe zwar einen groben Ansatz im Kopf, aber der gefällt mir nicht.
 
Werbung:
Danke, aber Tutorials googeln kann ich auch, und ich will ja nicht alle Seiten ausgeben. :)

Mir ging es eigentlich um die Frage, wie ich bei einem Ergebnis von bsw. 901 die letzte Seite ermittele.

Ich könnte so was wie $foo = Gesamtzahl Modulo 10 machen, und wenn $foo !== 0 ist, mir die Seitennummer aus der ersten Ziffer von Gesamtzahl + $foo zusammenbauen. Aber das hätte was von Stringverknüpfung, und ich suche eigentlich nach einem besseren Ansatz.
 
Werbung:
und wenn du ceil(Gesamtzahl / 10) machst, dann hättest du ein Ergebnis von 91. Damit hast du doch die Seitenzahl dann raus. Oder was willst du genau wissen??
 
und wenn du ceil(Gesamtzahl / 10) machst, dann hättest du ein Ergebnis von 91. Damit hast du doch die Seitenzahl dann raus. Oder was willst du genau wissen??

Danke dir. Genau das meinte ich.

PHP:
<? $foo = 301; // Anzahl Datenbankeinträge

for ($i=1; $i <= intval($foo / 10); $i++) {
  echo ($i <= 3) ? '<a href="#">'.$i.'</a>' : false;
} ?>
... <a href="#"><?=ceil($foo / 10);?></a>

Ausgabe: 1 2 3 ... 31
 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben