das will ich auch ;)

Hallo!
Ich möchte nicht das der PHP Code beim Seitenaufruf angezeigt wird ;) .
PHP:
<HTML>
<BODY>
<PRE>
<?php

#-------------------------------------------------------------------------------
# Variablen ermitteln #
#---------------------#

$rl = "http://" . $SERVER_NAME ;       # Root-URL
$sn = $PHP_SELF;                       # Name Script relativ zur URL
$sl = $rl . $sn;                       # komplette URL dieses Scripts

$sn = substr($sn, 1);                  # 1. Zeichen ("/") vom Scriptname entfernen
$lp = strrpos($sn, "/");               # Position letztes "/"

# Dateiname Script ausblenden und damit nur noch Name aktuelles VZ
if ($lp) {$sd = substr($sn, 0, $lp);}

# Falls ein Verzeichnis als Parameter uebergeben, dann dies nehmen
if ($HTTP_GET_VARS["d"]) {
  $sd = $HTTP_GET_VARS["d"];
}

# Falls ein SubDir vorhanden, dann fuer den Link ein "/" anfuegen
if ($sd) {$sdref = $sd . "/";}

#-------------------------------------------------------------------------------
# Test #
#------#

# echo "rl    : $rl\n";
# echo "sn    : $sn\n";
# echo "sl    : $sl\n";
# echo "sn    : $sn\n";
# echo "lp    : $lp\n";
# echo "sd    : $sd\n";
# echo "sdref : $sdref\n";
# echo "\n";

#-------------------------------------------------------------------------------
# Verzeichnis einlesen #
#----------------------#

$dir = $DOCUMENT_ROOT . "/" . $sd;    # komplettes physikalisches Verzeichnis
$dr  = dir($dir);
$ard = array();
$arf = array();
$pdref = "";
while($e=$dr->read()) {
  # alle Eintraege, ausser die mit "." oder "index." beginnen, mit Link auflisten
  if ((! ereg ("^\.", $e)) && (! ereg ("^index\.", $e))) {
    $f = $dir . "/" . $e;
    if (is_dir ($f))  {$ard[$e] = 0;}            # Verzeichnis speichern
    if (is_file ($f)) {
      $sz = filesize($f);                        # Dateigroesse
      $ti = date("d.m.Y H:i:s", filemtime($f));  # Datum letzter Aenderung
      $arf[$e] = "$sz   $ti";                    # Dateiname mit den Zusatzinfos speichern
    }
  }
  # Spezieller Link bei Eintrag ".." und nicht in der Root-URL
  if (($e == "..") && ($sd)) {
    $lp = strrpos($sd, "/");            # Position letztes "/"
    $pd = substr($sd, 0, $lp);          # neues Verzeichnis bis zum letztem "/"
    $pdref = $sl . "?d=" . $pd;
  }    
}
$dr->close();

#-------------------------------------------------------------------------------
# Ausgabe #
#---------#

echo "<b>Directory: $rl/$sd</b><br>\n";              # kompletter Link

# Ausgabe Parent Directory
if ($pdref) {
  echo "<a href=\"$pdref\">Parent Directory</a><br>\n";
}  

# Ausgabe Verzeichnisse
ksort ($ard);   # Verzeichnissnamen sortieren
reset ($ard);   # Zeiger auf erstes Element im Array
while (list ($key, $val) = each ($ard)) {
  $ref = $sl . "?d=" . $sdref . $key;
  echo "[DIR]   <a href=\"$ref\">$key</a><br>";
}

# Ausgabe Dateien
ksort ($arf);   # Dateinamen sortieren
reset ($arf);   # Zeiger auf erstes Element im Array
while (list ($key, $val) = each ($arf)) {
  $key2 = substr($key, 0, 49);         # maximale Laenge fuer angezeigten Dateinamen
  $ref = $rl . "/" . $sdref . $key ;   # Link zusammenstellen
  $rp = str_repeat(".", 80 - strlen($key2) - strlen($val)); # mit "." auffuellen
  echo "[FILE]  <a href=\"$ref\">$key2</a> $rp $val<br>";
}

#-------------------------------------------------------------------------------

?>
</BODY>
</HTML>

mfG
Thorsten
 
Naja, wie man´s nimmt. Bevor ich den zuständigen Admin verständigt habe, wurde der php-Code sogar ausgeführt :D und somit konnte man sich ungeniert auf dem gesamten Server bis zum Root durchhangeln... cooool

Der gute Mann hat sich viiiielmals für den Anruf bedankt *gg
 
Back
Top