Geschrieben von lan am 23.10.2004, 15:17

Was ist eine Blätterfunktion?

Wenn man z.B. viele Einträge in einer Datenbank hat und man diese alle auf einer Seite lädt, kann es zu lange Ladezeiten kommen. Eine Blätterfunktion teilt die Einträge in einzelne Seiten auf.

Auch hier bei lima gibt es eine Blätterfunktion. z.B. für Tutorials. Fangen wir erstmal mit der festlegung der Variablen an:

$eintraege_pro_seite = 20;

In der Variable $eintraege_pro_seite steht, wie viel Einträge pro Seite angezeigt werden.

Nun zur MySQL-Abfrage
$query = mysql_query("SELECT * FROM tabelle");
$eintraege = mysql_num_rows($query);

Damit lesen wir alle Einträge in einer Tabelle aus und speichern die Anzahl der Einträge in der Variable $eintraege.

if(!isset($_GET['seite'])){
$seite = 0;
}else{
$seite = $_GET['seite'];
}

Wenn die Variable $_GET['seite'] nicht angegeben ist, ist die Variable $seite automatisch = 0. Wenn $_GET['seite'] angegeben ist, ist $seite = $_GET['seite'].

$start = $eintraege_pro_seite*$seite;
$ende = $start+$eintraege_pro_seite;

Das brauch ich glaube ich nicht weiter zu erklären...

$query = mysql_query("SELECT * FROM tabelle LIMIT $start,$ende");

Dieses Script liest dann $ende Einträge beginnend mit $start aus.

Jetzt nur noch die Beiträge mit einer while()-Schleife auslesen.

Dann kommt noch die Anzeige der Seiten...

$seiten = round($eintraege/$eintraege_pro_seite);
for($i=0;$i<$seiten;$i++){
echo "<a href=\"diedatei.php?seite=$i\">$i</a> ";
}

Viel Spaß mit dem Script.
Bei weiteren Fragen schreibt mir ne PN

Bewertung Anzahl
6
41,7 %
5 Bewertungen
5
25,0 %
3 Bewertungen
4
16,7 %
2 Bewertungen
1
16,7 %
2 Bewertungen