Auge: PDF -> readfile Ausgabe Problem

Beitrag lesen

Hallo

    $file = 'test.pdf';

Du hast nun einen Dateinamen angegeben.

    header('Content-Disposition: filename="'.basename($file).'"');

Der Dateiname wird nun korrekt in den HTTP-Header eingefügt.

    header('Content-Length: ' . filesize($file));

Allerdings wird es ab hier etwas verwirrend. Die Funktion filesize braucht nicht nur einen Dateinamen, sondern Zugang zur Datei. Deshalb …

    readfile('ausgabedateien/'.$file);

nur mit dem Pfad bei READFILE stimmt etwas nicht. Die Datei leigt im Verzeichniss ausgabedateien.

… verwundert mich dein letzter Satz. Wenn die Datei „test.pdf“ wie du anfangs schriebst, im selben Verzeichnis wie das Skript liegt, ist das Voranstellen von „ausgabedateien/“ vor den Dateinamen, der in $file liegt, falsch. Ist jedoch die Angabe von „ausgabedateien/“ vor dem Dateinamen richtig, weil, wie du zum Schluss angibst, die Datei in eben diesem Verzeichnis liegt, kann filesize($file) nicht funktionieren, weil die Datei, falls nicht eine Kopie von „test.pdf“ im Skriptverzeichnis liegt, nicht gefunden werden kann.

Tschö, Auge

--
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.
Wolfgang Schneidewind *prust*