Advertisement
Guest User

Untitled

a guest
May 29th, 2012
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.69 KB | None | 0 0
  1. <?php
  2.  
  3. $ur = $_SERVER['script_name']; // Dateipfad
  4.  
  5. // Seitenzahl ermitteln
  6. $go = (!empty($_GET['go'])) ? $_GET['go'] : 1;
  7. // -> wenn keine Seitenzahl angegeben wird, dann ist es die erste Seite
  8.  
  9. // ---------------------- Konfiguration -------------------------------------------
  10.  
  11. $anzeige = 1;               // Zahl der Grafiken die pro Seite angezeigt werden sollen  
  12. $p = 2;             // Anzahl der Links die auf der Seite angezeigt werden sollen
  13. $verzeichnis = "images";        // Verzeichnisbestimmung fuer die Bildausgabe
  14.  
  15. // ---------------------------------------------------------------------------------
  16.  
  17. $oeffnen = opendir($verzeichnis);   // oeffnet das angegebene Verzeichnis
  18.  
  19. //Dateien aus Ordner auslesen
  20. while ($file = readdir ($oeffnen)) {
  21.  
  22.     // Thumbs ausschliessen
  23.     if ($file != "." && $file != ".." && $file != "Thumbs.db" && preg_match("/\./",$file)){
  24.  
  25.         $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt
  26.     }
  27. }
  28.  
  29. closedir($oeffnen);         // Schließt den Ordner wieder
  30. sort($array);           // Sortiert das $array
  31.  
  32. foreach($array as $file) {  // Hier wird das $array auseindander genommen
  33.  
  34.     $dateienanzahl++;  
  35.  
  36.     if($dateienanzahl<=$anzeige*$go && $dateienanzahl>$anzeige*($go-1)){
  37.        
  38.             // nur dass aus, was hinter dem .Punkt steht
  39.         $punkt = strrchr($file, '.');
  40.         //Dateiendung herausfiltern
  41.         $title = str_replace($punkt, '', $file);
  42.        
  43.         // Grafik ausgeben
  44.             echo "<img src=\"$verzeichnis/$file\" title=\"$title\"  alt=\"$title\"/>\n";
  45.     }
  46.        
  47. }
  48.  
  49. // ---------------------------------- Seitennavigation definieren ---------------------
  50.  
  51. $pages = ceil($dateienanzahl / $anzeige); // Anzahl der Seiten ermitteln
  52.  
  53. // korrigieren der aktuellen Seite
  54. if(empty($_GET['go'])) {
  55.     $go = 1;
  56. } elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) {
  57.     $go = 1;
  58. } else {
  59.     $go = $_GET['go'];
  60. }
  61.  
  62. // Linkkette
  63. $links = array();
  64.  
  65. if(($go - $p) < 1){          
  66.   $prevOffset = $go - 1;      
  67. }else {          
  68.   $prevOffset = $p;      
  69. }            
  70. if(($go + $p) > $pages) {          
  71.   $nextOffset = $pages - $go;      
  72. }else {          
  73.   $nextOffset = $p;      
  74. }          
  75. $off = ($go - $prevOffset);    
  76.                
  77. if ($go- $prevOffset > 1){          
  78.     $first = 1;
  79.     $links[] = "<a href=\"$url?go=$first\" title=\"Zur ersten Seite springen\">&laquo; Erste ...</a>\n";      
  80. }      
  81. if($go != 1){          
  82.     $prev = $go-1;
  83.     $links[] = "<a href=\"$url?go=$prev\" title=\"Zurueck zur letzen Seite\"> &laquo;</a>\n";    
  84. }  
  85.        
  86. for($i = $off; $i <= ($go + $nextOffset); $i++){  
  87.   if ($i != $go){              
  88.         $links[] = "<a href=\"$url?go=$i\" title=\"Seite $i anzeigen\">$i</a>\n";
  89.   }elseif($i == $pages) {              
  90.         // aktuelle Seite, braucht keinen Link
  91.         $links[] = "<span class=\"current\">[ $i ]</span>\n";  
  92.         }          
  93.   elseif($i == $go){              
  94.         // aktuelle Seite, braucht keinen Link
  95.         $links[] = "<span class=\"current\">[ $i ]</span>\n";  
  96.         }      
  97. }                
  98. if($go != $pages){          
  99.     $next = $go+1;
  100.     $links[] = "<a href=\"$url?go=$next\" title=\"Weiter zur naechsten Seite\"> &raquo; </a>\n";
  101. }      
  102.  
  103. if ($off+$prevOffset*2 < $pages){          
  104.     // zur letzen Seite springen
  105.     $last = $pages;
  106.     $links[] = "<a href=\"$url?go=$last\" title=\"Zur letzen Seite springen\">... Letzte &raquo;</a>\n";
  107. }      
  108.  
  109.  
  110. // Alle Links in einen String packen
  111. $link_string = implode(" &nbsp; ", $links);
  112.  
  113.  echo "<div class=\"navigation\">\n";
  114.  
  115.  echo "<span class=\"pages\">Seite $go von $pages</span>\n";
  116.  
  117.  echo $link_string; // Ausgabe der Seitennavigation
  118.  
  119.  echo "</div>\n";
  120.  
  121. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement