Tutorial Sitemap Skript - Verzeichnisse auslesen - von Webbausteine.de

Hier ein kleines PHP-Skript zur Anzeige bestimmter Dateien in ausgesuchten Verzeichnissen. Ich stelle hier lediglich bestimmte Dateien aus meinem Verzeichnis Forum dar. Dadurch kann ich vollautomatisch den Inhalt in Form einer Sitemap verlinken.

Dies sind in diesem Beispiel folgende Datei-Erweiterungen: CSS, GIF, HTML, PHP

Hier mein Skript:

<?php
    function alle_dateien($dir) {
     $dateien = Array();
     $buchstabe_alt = "";
     $datei_tmp = glob($dir . '*', GLOB_MARK);
     foreach ($datei_tmp as $tmp) {
      if (substr($tmp,-1) != DIRECTORY_SEPARATOR) {
       $pfad = pathinfo($tmp);
       if (isset($pfad['extension']) &&
           in_array($pfad['extension'], array("css", "gif", "html", "php"))) {
       $buchstabe = strtoUpper(substr(basename($tmp), 0, 1));
       if (!strstr($buchstabe_alt, $buchstabe)) {
        $buchstabe_alt .= $buchstabe;
        $dateien[] = $buchstabe;
       }
        $dateien[] = $tmp;
       }
      }
      else {
      $buchstabe_alt = "";
      $dateien = array_merge($dateien, alle_dateien($tmp));
      }
     }
     return $dateien;
    }
   
    $dateien = alle_dateien('../Forum'); // Verzeichnis eintragen!
   
    // Filter (Pfad zu Dateien, die nicht angezeigt werden sollen)
    $filter_datei = Array(
     "../Forum/forum_antwort.php",
     "../Forum/forum_details.php",
     "../Forum/forum_funktionen.php",
     "../Forum/forum_navigation.php",
     "../Forum/forum_verbindung.php",
    );
   
    foreach ($dateien as $datei) {
     $datei = str_replace('\\', '/', $datei);
     if (is_file($datei)) {
      if (!in_array($datei, $filter_datei)) {
       echo '<a href="' . $datei . '" target="_blank">' . $datei . '</a><br>';
      }
     }
     else {
      echo '<b>' . $datei . '</b><br>';
     }
    }
?>

Gebt in dem Skript oben das Verzeichnis an, welches durchsucht werden soll. In meinem Beispiel habe ich mein Verzeichnis Forum eingetragen, das sich in meinem Stammverzeichnis befindet. Diese Beispielseite befindet sich ein Verzeichnis tiefer, daher gebe ich die relative Pfadangabe mit 2 Punkten ../ davor an (gehe ein Verzeichnis höher). Wollt Ihr das gesamte Stammverzeichnis durchsuchen lassen, also alle Verzeichnisse, dann würde man in diesem Beispiel eben kein Verzeichnis expliziet eintragen - also dann so: ../

Weiterhin wollte ich die oben rot markierten Dateien nicht mit anzeigen lassen und habe diese heraus gefiltert. Dabei handelt es sich um PHP-Seiten, die so einzeln nicht aufrufbar sind, bzw. aufzurufen sein sollen.

Für das PHP Skript oben, habe ich mir ein Textfeld aufgezogen und das Skript in den HTML Code-Editor dieses Texfeldes kopiert.

> Fenster “Text-Eigenschaften” > mittlere Button oben “Text” > Button “HTML” > Code einfügen

Natürlich muss PHP am Server vorhanden und auch die Seite mit dem Skript dann auf die Datei-Erweiterung .php umgestellt sein.

Viel Spaß!

Tutorials von Thomas Frei-Herrmann

diese Seite weiter empfehlen


Counter Statistik