Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $ur = $_SERVER['script_name']; // Dateipfad
- // Seitenzahl ermitteln
- $go = (!empty($_GET['go'])) ? $_GET['go'] : 1;
- // -> wenn keine Seitenzahl angegeben wird, dann ist es die erste Seite
- // ---------------------- Konfiguration -------------------------------------------
- $anzeige = 1; // Zahl der Grafiken die pro Seite angezeigt werden sollen
- $p = 2; // Anzahl der Links die auf der Seite angezeigt werden sollen
- $verzeichnis = "images"; // Verzeichnisbestimmung fuer die Bildausgabe
- // ---------------------------------------------------------------------------------
- $oeffnen = opendir($verzeichnis); // oeffnet das angegebene Verzeichnis
- //Dateien aus Ordner auslesen
- while ($file = readdir ($oeffnen)) {
- // Thumbs ausschliessen
- if ($file != "." && $file != ".." && $file != "Thumbs.db" && preg_match("/\./",$file)){
- $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt
- }
- }
- closedir($oeffnen); // Schließt den Ordner wieder
- sort($array); // Sortiert das $array
- foreach($array as $file) { // Hier wird das $array auseindander genommen
- $dateienanzahl++;
- if($dateienanzahl<=$anzeige*$go && $dateienanzahl>$anzeige*($go-1)){
- // nur dass aus, was hinter dem .Punkt steht
- $punkt = strrchr($file, '.');
- //Dateiendung herausfiltern
- $title = str_replace($punkt, '', $file);
- // Grafik ausgeben
- echo "<img src=\"$verzeichnis/$file\" title=\"$title\" alt=\"$title\"/>\n";
- }
- }
- // ---------------------------------- Seitennavigation definieren ---------------------
- $pages = ceil($dateienanzahl / $anzeige); // Anzahl der Seiten ermitteln
- // korrigieren der aktuellen Seite
- if(empty($_GET['go'])) {
- $go = 1;
- } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) {
- $go = 1;
- } else {
- $go = $_GET['go'];
- }
- // Linkkette
- $links = array();
- if(($go - $p) < 1){
- $prevOffset = $go - 1;
- }else {
- $prevOffset = $p;
- }
- if(($go + $p) > $pages) {
- $nextOffset = $pages - $go;
- }else {
- $nextOffset = $p;
- }
- $off = ($go - $prevOffset);
- if ($go- $prevOffset > 1){
- $first = 1;
- $links[] = "<a href=\"$url?go=$first\" title=\"Zur ersten Seite springen\">« Erste ...</a>\n";
- }
- if($go != 1){
- $prev = $go-1;
- $links[] = "<a href=\"$url?go=$prev\" title=\"Zurueck zur letzen Seite\"> «</a>\n";
- }
- for($i = $off; $i <= ($go + $nextOffset); $i++){
- if ($i != $go){
- $links[] = "<a href=\"$url?go=$i\" title=\"Seite $i anzeigen\">$i</a>\n";
- }elseif($i == $pages) {
- // aktuelle Seite, braucht keinen Link
- $links[] = "<span class=\"current\">[ $i ]</span>\n";
- }
- elseif($i == $go){
- // aktuelle Seite, braucht keinen Link
- $links[] = "<span class=\"current\">[ $i ]</span>\n";
- }
- }
- if($go != $pages){
- $next = $go+1;
- $links[] = "<a href=\"$url?go=$next\" title=\"Weiter zur naechsten Seite\"> » </a>\n";
- }
- if ($off+$prevOffset*2 < $pages){
- // zur letzen Seite springen
- $last = $pages;
- $links[] = "<a href=\"$url?go=$last\" title=\"Zur letzen Seite springen\">... Letzte »</a>\n";
- }
- // Alle Links in einen String packen
- $link_string = implode(" ", $links);
- echo "<div class=\"navigation\">\n";
- echo "<span class=\"pages\">Seite $go von $pages</span>\n";
- echo $link_string; // Ausgabe der Seitennavigation
- echo "</div>\n";
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement