20): return; endif; //print "

Die Aufruftiefe von $verzeichnis ist: $tiefe!

"; // Verzeichnisnamen und Pfad trennen $pfadname = dirname ($verzeichnis); $dateiname = basename ($verzeichnis); // Sonderverzeichnisse auslassen if ( ($dateiname == ".") OR ($dateiname == "..")): return; endif; // Datum extrahieren um sortieren zu können $pattern = "(20[0-9][0-9][0-1][0-9][0-3][0-9])"; preg_match_all ($pattern, $dateiname, $musterarray); // Datum extrahieren $datum = $musterarray[0][0]; // Datum in Variable if ($datum): $verzeichnisarray[] .= "$datum|$dateiname|$verzeichnis"; //Alles in ein Array als Liste else: $verzeichnisarray_sonst[] .= "|$dateiname|$verzeichnis"; //Alles in ein Array als Liste endif; // Verzeichnis öffenen $dirhandel = opendir ($verzeichnis); // Alles einlesen while ($datei =readdir ($dirhandel)): // Verzeichnisse .. und . ignorieren if ( ($datei == ".") OR ($datei == "..")): continue; endif; $dateineu = $verzeichnis."/".$datei; //print "Eingelesen: $dateineu
"; // Falls Verzeichnis, rekursiv aufrufen if (is_dir ($dateineu) ): // Verzeichnis gefunden //print "Lese Verzeichnis $dateineu ein.
"; Verzeichnisse_suchen ($dateineu, $tiefe, $verzeichnisarray, $verzeichnisarray_sonst); endif; endwhile; closedir ($dirhandel); } function Dateien_ausgeben ($verzeichnis, $ausgabedatum, &$ausgabestring){ $pfadname = dirname ($verzeichnis); $dateiname = basename ($verzeichnis); if ( ($dateiname == ".") OR ($dateiname == "..")): // Akt. und übergeordneter Ordner auslassen return; endif; if ($ausgabedatum == ""): // Ohne Datum? $d = ""; $prefix = ""; else : $dJahr = substr ($ausgabedatum, 0,4); // Datum zerlegen und neu zusammensetzen $dMonat = substr ($ausgabedatum, 4,2); $dTag = substr ($ausgabedatum, 6,2); $d = "$dTag.$dMonat.$dJahr"; $prefix = " - "; endif; $ausgabestringtemp = " $d"; //$dateiname $nix = "^([[:graph:] ]*)$ausgabedatum([[:graph:] ]*)$"; // " . $ausgabedatum . " $count = ereg ($nix, $dateiname, $felder); while ($x < sizeof ($felder) ): if($felder[$x] > ""): $ausgabestringtemp .= $prefix . $felder[$x]; endif; $x++; endwhile; $ausgabestringtemp .= ""; //$dateiname $ausgabestring .= str_replace ("_", " ", $ausgabestringtemp); // Im Namen _ durch Blank ersetzten // Verzeichnis öffenen $dirhandel = opendir ($verzeichnis); // Alles einlesen while ($datei =readdir ($dirhandel)): // Verzeichnisse, .. und . ignorieren if ( ($datei == ".") OR ($datei == "..")): continue; endif; $dateineu = $verzeichnis."/".$datei; if (is_dir ($dateineu) ): continue; endif; if (is_file ($dateineu) ): // Datei gefunden //print "Datei $pfadname/$datei gefunden.
"; $dateigroesse = filesize ($dateineu); $ausgabestring .= "  $datei  $dateigroesse B  $dateiname "; endif; endwhile; closedir ($dirhandel); } //################################################################################################# // Alle anzeigen oder nur einen Fotografen? // Es können aus Sicherheisgründen nur Fotografen ausgewählt werden, die in der Liste stehen! // Die Namen müssen exakt gleich sein! $neueste = false; $alletext = " "; if ($fotograf == "NEUESTE"){ // Nur die neuesten Verzeichnisse? $neueste = true; } elseif ($fotograf == "ALLE"){ // Ist ein Fotograf angegeben? $alletext = "


Alle Verzeichnisse


"; // Nichts zu tun! } elseif ($fotograf != ""){ // Ist ein Fotograf angegeben? foreach ($vverzeichnisse as $vverzeichnis) { // Alle Fotografen prüfen if (ereg ($fotograf, $vverzeichnis) ) : // Ist der Fotograf in der Liste? $vverzeichnisse = array($vverzeichnis); // Nur einen Fotograf anzeigen. endif; } } $startzeit = date("H:i:s"); print "Sortierte - Version 0.401 - $startzeit
$fotograf
"; print "

Aktuelle Bilder auf dem Server der Astronomischen Arbeitsgruppe Ulm e.V.

$alletext"; if ($neueste == true){ // Die neuesten Verzeichnisse $datumarray = ""; $sonstarray = ""; $person = str_replace ("_", " ", basename ($vverzeichnis) ); // Im Namen _ durch Blank ersetzten print "

Die $anzahl neuesten Verzeichnisse mit Bildern


"; foreach ($vverzeichnisse as $vverzeichnis) { Verzeichnisse_suchen ($vverzeichnis, 0, $datumarray, $sonstarray); // Verzeichnisse einlesen } rsort ($datumarray); // Array sortieren sort ($sonstarray); // Array sortieren $ausgabestring = " "; if (sizeof ($datumarray) < $anzahl) { // Weniger als 10 Verzeichnisse? $anzahl = sizeof ($datumarray); } // Verzeichnisse mit Datum ausgeben for ( $loop = 0; $loop < $anzahl; $loop++): $ausgabezeile = $datumarray[$loop]; list ( $ausgabedatum, $ausgabename, $ausgabeverzeichnis ) = split ( "\|", $ausgabezeile); //print "

$ausgabezeile - ($ausgabedatum)($ausgabename)($ausgabeverzeichnis)

"; Dateien_ausgeben ($ausgabeverzeichnis, $ausgabedatum, $ausgabestring); endfor; $ausgabestring .= "
Datum Bild oder Datei Größe Verzeichnis
"; $ausgabestring_html = htmlentities ($ausgabestring); print "$ausgabestring"; } else { // Ganz normal anzeigen foreach ($vverzeichnisse as $vverzeichnis) { $datumarray = ""; $sonstarray = ""; $person = str_replace ("_", " ", basename ($vverzeichnis) ); // Im Namen _ durch Blank ersetzten print "

Bilder von $person


"; Verzeichnisse_suchen ($vverzeichnis, 0, $datumarray, $sonstarray); // Verzeichnisse einlesen rsort ($datumarray); // Array sortieren sort ($sonstarray); // Array sortieren $ausgabestring = " "; // Verzeichnisse mit Datum ausgeben for ( $loop = 0; $loop < sizeof ($datumarray); $loop++): $ausgabezeile = $datumarray[$loop]; list ( $ausgabedatum, $ausgabename, $ausgabeverzeichnis ) = split ( "\|", $ausgabezeile); //print "

$ausgabezeile - ($ausgabedatum)($ausgabename)($ausgabeverzeichnis)

"; Dateien_ausgeben ($ausgabeverzeichnis, $ausgabedatum, $ausgabestring); endfor; // Verzeichnisse ohne Datum ausgeben for ( $loop = 0; $loop < sizeof ($sonstarray); $loop++): $ausgabezeile = $sonstarray[$loop]; list ( $ausgabedatum, $ausgabename, $ausgabeverzeichnis ) = split ( "\|", $ausgabezeile); //print "

$ausgabezeile - ($ausgabedatum)($ausgabename)($ausgabeverzeichnis)

"; Dateien_ausgeben ($ausgabeverzeichnis, $ausgabedatum, $ausgabestring); endfor; $ausgabestring .= "
Datum Bild oder Datei Größe Verzeichnis
"; $ausgabestring_html = htmlentities ($ausgabestring); print "$ausgabestring"; } } ?>