$name) ## für jedes Element schauen, ob es ein Bild ist { if (false === @getimagesize($name)) { unset($_thumb_names[$key]); ## wenn es kein Bild ist, den Eintrag entfernen } } } sort($_thumb_names); #-------------------- $maxpage = ceil(count($_thumb_names) / $pics_per_page); ## von 0 bis max if(isset($_GET['page'])) { ## intval, falls ein Scherzbold 1.35 oder Text eintippt *g* $page = intval($_GET['page']) -1; ## Benutzer zählen von 1 bis N, wir aber von 0 bis ... $page = max(0, $page); ## negative Seiten gibt es nicht $page = min ($maxpage, $page); ## größer als $maxpage geht auch nicht } $active_pic = $page * $pics_per_page; ## Index des nächsten Bildes berechnen $page_stop = $active_pic + $pics_per_page; ## Wann ist die Seite zuende? #-- Links für die Bildausgabe produzieren --- while (isset($_thumb_names[$active_pic]) and ($active_pic < $page_stop)) { ## link generieren $pic_link = $img_folder . basename($_thumb_names[$active_pic]); if (!file_exists($pic_link) or (false === @getimagesize($pic_link))) { $pic_link = $error_pic; } $out_pictures .= "\n"; $active_pic++; } #-- Navigation aufbauen --- if ($page > 0) { $out_links .= "Anfang\n"; $out_links .= "zurück\n"; } if ($page < $maxpage-1) ## es gibt eine nächste Seite, page zählt von 0 bis (n-1) { $out_links .= "weiter\n"; } if ($maxpage > ($page+1)) ## Die nächsete Seite ist noch nicht das Ende { $out_links .= "Ende\n"; } ############################################################################### # # HTML-Output # ############################################################################### ?> Seite ".($page+1)." von ".($maxpage)."\n"; echo "
$out_pictures
\n"; echo "
$out_links
\n"; ?>