Hallo Johann,
$download = $_GET['download'];
Frage 1: Soll ich also das Scipt, nennen wir es download.php, mit z.B. download.php?download=file2 aufrufen?
so wie ich das Script verstanden habe, ja.
$basedir = "/home/www/download";
Frage 2: Was heißt per URL nicht erreichbar?
du kannst die Dateien nicht über http://www.example.com/pfad/zu/datei.tld aufrufen.
Ist damit gemeint das man einfach so nicht auf den Pfad kommt, oder soll das Verzeichnis irgendwie geschützt werden, z.B. mit .htaccess ?
nein
$filename = sprintf("%s/%s", $basedir, $filelist[$download]);
Frage 3: printf() kenne ich. das ist so wie echo(), bloß das die Ausgabe formatiert wird. Was aber soll das "s" davor?
sprintf() gibt einen String zurück ->http://de3.php.net/sprintf
$save_as_name = basename($filelist[$download]);
header("Content-Disposition: attachment; filename="$save_as_name"");
Frage 4: Bedeutet die Zeile mit basename(), das der Dateiname aus dem Pfadnamen extrahiert wird und dann in $save_as_name geschrieben wird ?
ja
Wenn ja , wie erkennt dann der nachfolgende header den richtigen Pfad ?
was meinst du damit? für was soll bei filename=... der Pfad drinstehen?
Grüße aus Nürnberg
Tobias
Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|