Tobias Kloth: Download-Script

Beitrag lesen

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:|