basti_p: Content-Disposition: inline / filename übergeben

Hallo,

ich habe eine Frage zm Download via PHP-Script:

in meinem CMS werden alle hochgeladenen Dateien unter einer Nummer + Extension abgespeichert, der richtige Dateiname steht in einer MySQL-Tabelle.

Das Downloadscript liefert die runterzuladende Datei dann so aus:

header("Content-Type: application/octet-stream");
 header("Content-Disposition: attachment; filename="".$save_as_name.""");

was auch prima funktioniert.
Allerdings würde ich jetzt gebeten, dass PDF-Dateien ohne den "Öffnen/Speichern-Dialog" sofort geöffnet werden. Das wollte ich so realisieren:

if(pdf...)
header("Content-Type: application/pdf");
 header("Content-Disposition: inline; filename="".$save_as_name.""");

Funktioniert auch, leider wird aber das filename-Argument ignoriert; die PDF-Datei heisst dann immer wie das Download-Script "download.pdf".

Gibt es eine Möglichkeit, bei "Content-Disposition: inline" auch den Namen mitzugeben?

Danke und Grüße Basti

  1. Hi,

    Gibt es eine Möglichkeit, bei "Content-Disposition: inline" auch den Namen mitzugeben?

    Diese Möglichkeit nutzt Du.

    Allerdings gibt es "Dumpf-Browser", die das ggf. nicht interessiert.

    Abhilfe: Dateinamen dem Script via PATH_INFO übergeben (z.B. http://example.com/download.php/mypdf.pdf) oder (IIRC) als QUERY_STRING (z.B. http://example.com/download.php?mypdf.pdf)

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
    1. Danke!

      Grüße Basti