Hi Leute ich habe mal wieder ein Problemchen was ich mir einfach nicht erklären kann... ich hoffe ihr könnt mir helfen.
Ich habe versucht ein kleines script zu schreiben das eine seitenzahlnavigation ähnlich wie bei google erzeugt. Also das Seite 1 2 3 4 usw angezeigt wird dabei die aktuelle seite schwarz gemacht (also ohne link) und die anderen rot (mit hyperlink). Es soll dann so sein das immer nur max. 5 zahlen vor der aktuellen seite und 5 nach der aktuellen seite angezeigt werden (hier testeshalber immer nur 2).
Doch das Problem ist jetzt das er auf der letzten seite (hier seite 4) komische werte hat .
hier erst mal der quellcode
--> Bis zur seite funktioniert alles wunderbar nur auf der letzten seite wo folgende variabeln folgende werte haben sollten
$aktuell = 4 doch er hat dann auf einmal den wert 16 und ich kann mir nicht erklären warum.....
Zur info in der DB sind 16 einträge.... Irgendwie funktioniert die berechnung auf der letzten seite nicht
$aktuell = $_GET['s'] / $intervall;
$aktuell = explode(".",$aktuell);
$aktuell = $aktuell[0]+1;
--> Wieso geht es auf den 3 seiten vorher und auf der letzten nicht mehr ich hoffe ihr könnt mir irgendwie helfen
Ich habe versucht ein kleines script zu schreiben das eine seitenzahlnavigation ähnlich wie bei google erzeugt. Also das Seite 1 2 3 4 usw angezeigt wird dabei die aktuelle seite schwarz gemacht (also ohne link) und die anderen rot (mit hyperlink). Es soll dann so sein das immer nur max. 5 zahlen vor der aktuellen seite und 5 nach der aktuellen seite angezeigt werden (hier testeshalber immer nur 2).
Doch das Problem ist jetzt das er auf der letzten seite (hier seite 4) komische werte hat .
hier erst mal der quellcode
PHP:
<?
// Navigationsseiten
$result = mysql_query("SELECT * FROM Events ");
$num = mysql_num_rows($result);
$maxanzeige_links = 0;
$maxanzeige_rechts = 0;
//Aktuelle Seite herausfinden
$aktuell = $_GET['s'] / $intervall;
$aktuell = explode(".",$aktuell);
$aktuell = $aktuell[0]+1;
for($i=0, $seite=1; $i<=$num; $i=$i+5, $seite++) {
//Ausgabe Seiten vor der aktuellen Seite
if ($seite < $aktuell ) {
if ( $maxanzeige_links <= 1) {
echo (" <a href='http://www.2ndrb.de/ga-town/index.php?goto=events_anzeigen&navi=events&s=$i'>$seite</a> ");
$maxanzeige_links = $maxanzeige_links +1; }
}
//Ausgabe aktuellen Seite
if ($seite == $aktuell ) {
echo ($seite); }
//Ausgabe Seiten nach der aktuellen Seite
if ($seite > $aktuell ) {
if ( $maxanzeige_rechts <= 1) {
echo (" <a href='http://www.2ndrb.de/ga-town/index.php?goto=events_anzeigen&navi=events&s=$i'>$seite</a> ");
$maxanzeige_rechts = $maxanzeige_rechts +1; } }
}
?>
--> Bis zur seite funktioniert alles wunderbar nur auf der letzten seite wo folgende variabeln folgende werte haben sollten
$aktuell = 4 doch er hat dann auf einmal den wert 16 und ich kann mir nicht erklären warum.....
Zur info in der DB sind 16 einträge.... Irgendwie funktioniert die berechnung auf der letzten seite nicht
$aktuell = $_GET['s'] / $intervall;
$aktuell = explode(".",$aktuell);
$aktuell = $aktuell[0]+1;
--> Wieso geht es auf den 3 seiten vorher und auf der letzten nicht mehr ich hoffe ihr könnt mir irgendwie helfen
Zuletzt bearbeitet von einem Moderator: