Hej Jonas,
> Jeg er ved at lave en PHP-side, der skal kunne spytte filer ud - både
> binære filer og tekstfiler. Når brugerne ser filen, skal de kunne gemme den
> - og helst med det originale filnavn (f.eks. "billed.png" i stedet for
> "test.php").
*gys* - det er et rent helvede at få til at fungere ordentligt i alle
browsere.
> Til det skal jeg vel bruge "filename"-attributten i
> Content-Disposition - men hvad skal indholdet af Content-Disposition være?
> Jeg kender kun "attachment" og "inline", som hyppigt bruges i emailheaders.
>
> Content-Type: image/png
> Content-Disposition: hvadSkalDerStåHer?; filename="billed.png"
"Attachment" fremprovokerer et download i nyere browsere.
Content-Typen application/octet-stream vil fremprovokere et download i
de fleste browsere - bortset fra MSIE. Her virker
application/ms-download bedre (hurra for Påskebrød).
IE5.5 (vistnok kun uden SP1) har en bug, der gør, at man her IKKE skal
angive "attachment", men blot 'Content-Disposition:
filename="billed.png"'. Der er andre relaterede bugs i IE5.5 - se
http://microsoft.com.
IE går også kold, hvis man sender en header, der skal forhindre caching
(kan ikke lige huske hvilken).
Ovenstående er skrevet ud fra hukommelsen. Jeg har forsøgt at lave
stuntet et par gange, men jeg har ikke lige adgang til noget sovs
herfra.
> En anden ting: Min Konqueror går ned, når jeg spytter en fil ud med siden.
> Foreløbig har jeg kun brugt Content-Type-headeren - det burde vel ikke
> kunne få den til at gå ned.
Nej, principielt bør programmer jo ikke gå ned. Men det gør de jo
undertiden
Christian