... und wennste ein anderes script verwendest - wär' das schlimm?
Ich hab so ziemlich überhaupt keine Ahnung was php ist, für mich sind php - Dateien sowas Ähnliches wie es die exe - Dateien sind, die ich auf meinen M$ Win - harddrives finde und die ich zur Ausführung irgendeiner Funktion anklicke. Darum kann ich zu den Fragen zu Deinem Script nix Konstruktives beifügen, sorry.
Ich verwende das folgende Ding um auf meinen Webspeicherplätzen spazieren zu gehen. Ich modifiziere es von Fall zu Fall, meistens mit html - Befehlen (ebent weil ich mit php nicht zurecht komme).
Ich hänge im nächsten Beitrag noch ein anderes script an, mit dem man nicht in einzelne Directories reingucken kann, sondern das Directories samt enthaltenen Dateien auflistet - so 'ne Art totale sitemap.
Vielleicht kannste damit Dein Ziel erreichen?
Ich nenne die folgende Datei walk_t wobei das t für Text steht. Eine andere, ähnliche Datei (von dieser hier abgeleitet) kann Bilder anzeigen, sie heißt walk_p wobei p für picture steht und eine Kombination aus beiden nenne ich walt_tp, wobei beides angezeigt wird, Dateinamen als auch das zugehörige Bild.
<?php
# Do we have a path? if not, it's the current directory
$path = $_GET["path"];
if( !isset( $path ) || $path == "" ) {
$path = ".";
}
# Print out for navigation
echo "current path: <b>" . $path . "</b><br />\n";
echo " <br><b>directories</b><br />\n";
# Initialise list arrays, directories and files separately and array counters for them
$d_arr = array(); $d = 0;
$f_arr = array(); $f = 0;
# Open possibly available directory
if( is_dir( $path ) ) {
if( $handle = opendir( $path ) ) {
while( false !== ( $file = readdir( $handle ) ) ) {
# Make sure we don't push parental directories or dotfiles (unix) into the arrays
if( $file != "." && $file != ".." && $file[0] != "." ) {
if( is_dir( $path . "/" . $file ) )
# Create array for directories
$d_arr[$d++] = $file;
else
# Create array for files
$f_arr[$f++] = $file;
}
}
}
}
# Wrap things up if we're in a directory
if( is_dir( $handle ) ) closedir( $handle );
# Sort and reset the arrays
asort( $d_arr ); reset( $d_arr );
asort( $f_arr ); reset( $f_arr );
# Print a parent directory link
$d_prev = substr( $path, 0, ( strrpos( dirname( $path . "/." ), "/" ) ) );
// insert
// please do not show me a faked link, you naughty boy!
if ($path == ".") { echo "parent directory - weita rauf gez nich mer<br />\n";
}
else
// /insert
echo "<a href=\"?path=" . $d_prev . "\">parent directory</a><br />\n";
# Print the directory list
for( $i=0; $i < count( $d_arr ); $i++ ) {
# Print with query string
echo "<li> <a href=\"?path=" . $path . "/" . $d_arr[$i] . "\">" . $d_arr[$i] . "</a>/<br />\n";
# Alternate, without the "[ D ]" for "directory",
# delete "[ D ] " (note the white space) in the echo line
}
echo "</ol><ol>\n";
echo "<b>files</b><br />\n";
# Print file list
for( $i=0; $i < count( $f_arr ); $i++ ) {
# Only print path and filename
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
echo "<li> <a href=\"" . $path . "/" . $f_arr[$i] . "\"> " . $f_arr[$i] . "</a>";
echo " ";
echo " ";
# Alternate, without the "[ F ]" for "file",
# delete "[ F ] " (note the white space) in the echo line
# Alternate, without file size function, this is the correct place to comment it out
# delete the "#" sign in front of "/" and "*" after last line of this comment
# and follow the last "Alternate" recommendation below
# Both must be done - or nothing. One comment lonely results in an error message.
# Without white space between slash and asterix.
# We may want a file size. NOTE: needs $path to stat
if( filesize( $path . "/" . $f_arr[$i] ) >= 1024 ) {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in kilobytes
echo " " . round( filesize( $path . "/" . $f_arr[$i] ) / 1024, 1 ) . " KB<br />\n";
} elseif( filesize( $path . "/" . $f_arr[$i] ) >= 1048576 ) {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in megabytes
echo " " . round( filesize( $path . "/" . $f_arr[$i] ) / 1024 / 1024, 1 ) . " MB<br />\n";
} else {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in bytes
echo " " . filesize( $path . "/" . $f_arr[$i] ) . " bytes<br />\n";
}
# Without white space between asterix and slash.
# Alternate, without file size function, this is the correct place to comment it out
# delete the "#" sign in front of "*" and "/" before first line of this comment
# and look for the "Alternate" recommendation a few lines upwards.
# Both must be done - or nothing. One comment lonely results in an error message.
# And
# once the file size function is commented out, line breaks "<br />" are lost.
# To get them back, needs to uncomment also the following line.
#echo "<br />\n";
}
?>
Die englischen Kommentare sind nur teilweise von mir.
Das Anzeigen der file sizes kann man durch Auskommentieren unterdrücken - muß dann aber ganz unten den Zeilenumbruch ent - kommentieren.
Wenn der code jemandem als föllich vermurxt vorkommt - dann bitte ich um Nachsicht.
Ich bin Laie.
Aber - dies Ding sollte eigentlich überall funktionieren - egal ob's ein X - oder Win - Server ist auf den es kopiert wird.
Ich wünsche Dir Glück damit - wenn es Dir überhaupt eine Hilfe ist.
Ich hab so ziemlich überhaupt keine Ahnung was php ist, für mich sind php - Dateien sowas Ähnliches wie es die exe - Dateien sind, die ich auf meinen M$ Win - harddrives finde und die ich zur Ausführung irgendeiner Funktion anklicke. Darum kann ich zu den Fragen zu Deinem Script nix Konstruktives beifügen, sorry.
Ich verwende das folgende Ding um auf meinen Webspeicherplätzen spazieren zu gehen. Ich modifiziere es von Fall zu Fall, meistens mit html - Befehlen (ebent weil ich mit php nicht zurecht komme).
Ich hänge im nächsten Beitrag noch ein anderes script an, mit dem man nicht in einzelne Directories reingucken kann, sondern das Directories samt enthaltenen Dateien auflistet - so 'ne Art totale sitemap.
Vielleicht kannste damit Dein Ziel erreichen?
Ich nenne die folgende Datei walk_t wobei das t für Text steht. Eine andere, ähnliche Datei (von dieser hier abgeleitet) kann Bilder anzeigen, sie heißt walk_p wobei p für picture steht und eine Kombination aus beiden nenne ich walt_tp, wobei beides angezeigt wird, Dateinamen als auch das zugehörige Bild.
<?php
# Do we have a path? if not, it's the current directory
$path = $_GET["path"];
if( !isset( $path ) || $path == "" ) {
$path = ".";
}
# Print out for navigation
echo "current path: <b>" . $path . "</b><br />\n";
echo " <br><b>directories</b><br />\n";
# Initialise list arrays, directories and files separately and array counters for them
$d_arr = array(); $d = 0;
$f_arr = array(); $f = 0;
# Open possibly available directory
if( is_dir( $path ) ) {
if( $handle = opendir( $path ) ) {
while( false !== ( $file = readdir( $handle ) ) ) {
# Make sure we don't push parental directories or dotfiles (unix) into the arrays
if( $file != "." && $file != ".." && $file[0] != "." ) {
if( is_dir( $path . "/" . $file ) )
# Create array for directories
$d_arr[$d++] = $file;
else
# Create array for files
$f_arr[$f++] = $file;
}
}
}
}
# Wrap things up if we're in a directory
if( is_dir( $handle ) ) closedir( $handle );
# Sort and reset the arrays
asort( $d_arr ); reset( $d_arr );
asort( $f_arr ); reset( $f_arr );
# Print a parent directory link
$d_prev = substr( $path, 0, ( strrpos( dirname( $path . "/." ), "/" ) ) );
// insert
// please do not show me a faked link, you naughty boy!
if ($path == ".") { echo "parent directory - weita rauf gez nich mer<br />\n";
}
else
// /insert
echo "<a href=\"?path=" . $d_prev . "\">parent directory</a><br />\n";
# Print the directory list
for( $i=0; $i < count( $d_arr ); $i++ ) {
# Print with query string
echo "<li> <a href=\"?path=" . $path . "/" . $d_arr[$i] . "\">" . $d_arr[$i] . "</a>/<br />\n";
# Alternate, without the "[ D ]" for "directory",
# delete "[ D ] " (note the white space) in the echo line
}
echo "</ol><ol>\n";
echo "<b>files</b><br />\n";
# Print file list
for( $i=0; $i < count( $f_arr ); $i++ ) {
# Only print path and filename
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
echo "<li> <a href=\"" . $path . "/" . $f_arr[$i] . "\"> " . $f_arr[$i] . "</a>";
echo " ";
echo " ";
# Alternate, without the "[ F ]" for "file",
# delete "[ F ] " (note the white space) in the echo line
# Alternate, without file size function, this is the correct place to comment it out
# delete the "#" sign in front of "/" and "*" after last line of this comment
# and follow the last "Alternate" recommendation below
# Both must be done - or nothing. One comment lonely results in an error message.
# Without white space between slash and asterix.
# We may want a file size. NOTE: needs $path to stat
if( filesize( $path . "/" . $f_arr[$i] ) >= 1024 ) {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in kilobytes
echo " " . round( filesize( $path . "/" . $f_arr[$i] ) / 1024, 1 ) . " KB<br />\n";
} elseif( filesize( $path . "/" . $f_arr[$i] ) >= 1048576 ) {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in megabytes
echo " " . round( filesize( $path . "/" . $f_arr[$i] ) / 1024 / 1024, 1 ) . " MB<br />\n";
} else {
# verberge index.htm usw
if( "$f_arr[$i]" != "index.htm" )
if( "$f_arr[$i]" != "walk_t.php" )
#echo "<br>ich habe ihn!<br>";
# Size in bytes
echo " " . filesize( $path . "/" . $f_arr[$i] ) . " bytes<br />\n";
}
# Without white space between asterix and slash.
# Alternate, without file size function, this is the correct place to comment it out
# delete the "#" sign in front of "*" and "/" before first line of this comment
# and look for the "Alternate" recommendation a few lines upwards.
# Both must be done - or nothing. One comment lonely results in an error message.
# And
# once the file size function is commented out, line breaks "<br />" are lost.
# To get them back, needs to uncomment also the following line.
#echo "<br />\n";
}
?>
Die englischen Kommentare sind nur teilweise von mir.
Das Anzeigen der file sizes kann man durch Auskommentieren unterdrücken - muß dann aber ganz unten den Zeilenumbruch ent - kommentieren.
Wenn der code jemandem als föllich vermurxt vorkommt - dann bitte ich um Nachsicht.
Ich bin Laie.
Aber - dies Ding sollte eigentlich überall funktionieren - egal ob's ein X - oder Win - Server ist auf den es kopiert wird.
Ich wünsche Dir Glück damit - wenn es Dir überhaupt eine Hilfe ist.
Kommentar