phpbar.de logo

Mailinglisten-Archive

[php] richtiger Content-Typ ??

[php] richtiger Content-Typ ??

Roland Bialas php_(at)_phpcenter.de
Thu, 18 Jul 2002 18:55:42 +0200


ich glaube das hier könnte dir helfen:

<?
// Dateityp, der immer abgespeichert wird
header("Content-Type: application/octetstream");
// Dateiname
// mit Sonderbehandlung des IE 5.5
header("Content-Disposition: ".
     (!strpos($HTTP_USER_AGENT,"MSIE 5.5")?"attachment; ":"").
     "filename=datei name.ext");
// eigentlich ueberfluessig, hat sich aber wohl bewaehrt
header("Content-Transfer-Encoding: binary");
// Zwischenspeichern auf Proxies verhindern
// (siehe weiter unten)
header("Cache-Control: post-check=0, pre-check=0");
// Dateigröße für Downloadzeit-Berechnung
header("Content-Length: {Dateigroesse}");
?>

<schnipp>
Wenn der Nutzer später im Browser nicht auf den Link klickt, um dann die
Datei zu speichern, sondern direkt über Save Link as speichern will, konnte
noch kein Header gesendet werden, so daß der Browser den Dateinamen nicht
kennt und wieder den Dateinamen des Scripts vorschlägt. Das kann nur
umgangen werden, indem man dafür sorgt, daß der gewünschte Dateiname in der
URL steht. Dies ist wiederum nur über Funktionen des Webservers möglich.
Beim Apache sind das die Funktionen Rewrite und Redirect.
</schnapp>


gruss
roland


php::bar PHP Wiki   -   Listenarchive