On Tue, 01 Jul 2003 13:33:30 +0200, Martin Møller Bæk wrote:
> Jeg har fundet frem til noget kode, men den virker ikke ved alle filer.
Lige gyldigt hvor mange tricks, du benytter: Du kan ikke være sikker på,
at du kan trigge alle browsere til at præsentere en download-dialogboks:
Nogle systemer er så belastende, at de mener at kunne vælge for brugeren
og vise URL'en in-line i stedet for at tilbyde download.
Jeg har rodet lidt med den slags på
http://troels.arvin.dk/word-download-test/ og min konklusion var desværre,
at man ikke kunne være på den helt sikre side, når der var Internet Explorer
browsere involveret.
> header("Content-type: application/octetstream");
Det hedder "application/octet-stream".
Visse browsere kan godt lidt at få "application/x-msdownload" som
content-type, hvis en download-dialogboks skal vises. Det skader ikke at
benytte denne content-type, idet andre browsere ikke kender mime-typen og
derfor spørger brugere, hvad der skal ske.
> header("Expires: 0");
En expires-header skal have en dato+tid værdi. Jeg ved godt, at Microsoft
i visse sammenhænge anbefaler "Expires: 0", men som jeg læser
standarderne, er 0 en ugyldig værdi, og browserens opførsel er da
uforudsigelig. Bedre: Vælg en dato i fortiden, hvis du endelig vil benytte
tricks med Expires-headers (det burde ikke være nødvendigt, når du har sat
Cache-Control og Pragma som du har).
/Troels