PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ausgabe auf mehreren Seiten. Nicht Link zu jeder Seite, sondern mit [...] arbeiten?


DieMilchMachts
14.11.2005, 21:45:44
Hallo zusammen,

ich habe eine Frage und ein Problem und dachte, vielleicht kann mir jemand helfen, da ich mich mit PHP kaum auskenne.

Ich habe eine Ausgabeseite einer Datenbankabfrage. Ich habe es so hinbekommen, daß die Ausgabe auf mehrere Seiten verteilt wird. Nun wird aber bei vielen Seiten unten je ein Link auf jede mögliche Seite angezeigt und zusätzlich "[erste Seite]", "[eine Seite zurück]", "[eine Seite weiter]" und "[letzte Seite]". Die vielen einzelnen Links 1, 2, 3, 4 etc. auf die einzelnen Seiten sind mir aber zu viel.
Ich hätte gerne sowas wie "1 2 3 [...] 127 128 129", wobei 129 die letzte Seite wäre, d.h. also vor und nach der Seite, auf der ich mich befinde sollen je noch drei Links zu den angrenzenden Seiten angezeigt werden. Die Ausgabe von "[erste Seite]", "[eine Seite zurück]", "[eine Seite weiter]" und "[letzte Seite]" soll aber bleiben.
Das Ganze soll so funktionieren wie bei www.beichthaus.com (unten).
Aber wie mache ich das?

Mein Code für die Ausgabe mit den Links schaut so aus:

// Zurück- und Vorblättern
if($start > 0) {
echo "<a href='ausgabe.php?start=0'>[erste Seite]</a> ";
$back=$start-$limit;
if($back < 0) {
$back = 0;
}
echo "<a href=\"ausgabe.php?start=$back\">[eine Seite zur&uuml;ck]</a> ";
}

if($total>$limit) {
$Seiten=intval($total/$limit);
if($total%$limit) {
$Seiten++;
}
}

for ($i=1;$i<=$Seiten;$i++) {
$fwd=($i-1)*$limit;
echo "<a href=\"ausgabe.php?start=$fwd\">[$i]</a> ";
}

if($start < $total-$limit) {
$fwd=$start+$limit;
echo "<a href=\"ausgabe.php?start=$fwd\">[eine Seite weiter]</a> ";
$fwd=$total-$limit;
echo "<a href=\"ausgabe.php?start=$fwd\">[letzte Seite]</a>";
}

Vielen Dank und viele Grüße
DieMilchMachts