phpbar.de logo

Mailinglisten-Archive

[php] HTTP Header (content-disposition)

[php] HTTP Header (content-disposition)

Andreas Lange andreas.lange at haas-media.de
Mon Jun 14 12:49:51 CEST 2004


Hi,

Beim zwangsweisen Anstossen eines Downloads durch PHP ist mir was
aufgefallen, für das ich bislang nirgendwo eine Lösung finden konnte.

Ohne das Quoted Printable encoding, liefert der Mozilla Firebird den
Dateinamen nur bis zum ersten Leerzeichen. Der Internet Explorer
liefert mit dem korrekten Dateinamen aus.

Wenn ich das Quoted hinzufüge, kann der Mozilla es, aber der IE nicht.
Gibt es eine Möglichkeit das Problem RFC konform zu lösen und das
beide Browser funktionieren?

Hat jemand schon diese Problem gelöst und einen passenden
PHP-Schnipsel zur Hand?

$file = 'Langer Dateiname mit Spaces.pdf';

// quoted
$file = '=?iso-8859-1?q?'.str_replace(' ','=20',$file).'?=';

Header('Content-Type: application/octet-stream');
Header('Content-Length: '.strlen($buffer));
Header('Content-disposition: attachment; filename = '.$file);
echo $buffer;

-- 
Andreas Lange


php::bar PHP Wiki   -   Listenarchive