Aiun Geschrieben 30. April 2005 Teilen Geschrieben 30. April 2005 hi, ich habe mir ein Download-Script gebastelt, zum teil aus Inet Quellen, zum Teil selber. Anfangs hatte ich das Problem das er alle Dateien als zwangs-Download behandelt... mit $header="filename=".$filename.";"; anstatt $header="Content-Disposition: attachment; filename=".$filename.";"; lädt er zumindest Bilder jetzt wieder in einem browserfenster, wie es seinsollte...aber einfache txt Dateien werden immernoch zwangsgeladen... // Mime Type switch( $file_extension ) { case "txt": $ctype="application/txt"; break; case "pdf": $ctype="application/pdf"; break; case "zip": $ctype="application/zip"; break; case "gif": $ctype="image/gif"; break; case "png": $ctype="image/png"; break; case "jpeg": case "jpg": $ctype="image/jpg"; break; default: $ctype="application/force-download"; } // Write Header header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: public"); header("Content-Description: File Transfer"); // Header: Mime Type header("Content-Type: ".$ctype); // "Content-Disposition: attachment; filename=".$filename; header("filename=".$filename); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".$len); // Content-Output @readfile($file);[/PHP] ich wollte eigentlich auf eine Weiche verzichten die dann z.B. echo $content; oder so macht...k.A. wie es bei weiteren Dateitypen aussieht... ich kenne die sicherheitsbedenken bei solchen Scripts aber das habe ich abgefangen...hab' jetzt aber nur den relevanten Teil des Scripts gepostet Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 30. April 2005 Teilen Geschrieben 30. April 2005 Hi, $header="Content-Disposition: [b]inline[/b]; filename=".$filename.";"; Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aiun Geschrieben 2. Mai 2005 Autor Teilen Geschrieben 2. Mai 2005 k, danke. Hat funktioniert. Weißt du wo das festgelegt ist ? auf www.php.net habe ich nur die Spezifikation für http-insgesamt gefunden....etwas umfangreiche lektüre für sowas Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 2. Mai 2005 Teilen Geschrieben 2. Mai 2005 Weißt du wo das festgelegt ist ? Das hat mit PHP nichts zu tun. Du solltest eher bei HTTP-Spezifikationen suchen, da "Inline" (frei übersetzt: drinnen) und "attachement" (Anhang) auch andersow gibt. E-Mail ist ein gutes Beispiel. Du kannst da Bilder nämlich auch Inline (also der Empfänger sieht sie, wenn er die Nachricht liest) oder als Attachement (das Bild ist nur als Anhang dabei) verschicken. EDIT: Mit "header" änderst/erweiterst du (wie es der Name schon sagt) nur den HTTP-Header, der von Server abgeschickt wird. EDIT2: Content-Disposition is an extension to the MIME protocol that describes the content of the message and provides instructions about how the content is to be displayed. http://www.ietf.org/rfc/rfc2183.txt http://www.ietf.org/rfc/rfc1806.txt Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.