/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
HTTP-headere
Fra : Jonas Koch Bentzen


Dato : 24-07-01 21:56

Hej -

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"). 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"

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. Er der en header, jeg mangler?

--
Jonas Koch Bentzen

 
 
Christian Schmidt (24-07-2001)
Kommentar
Fra : Christian Schmidt


Dato : 24-07-01 22:57

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

Jonas Koch Bentzen (25-07-2001)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 25-07-01 10:21

Christian Schmidt skrev:

> Content-Typen application/octet-stream vil fremprovokere et download i
> de fleste browsere

Problemet er, at hvis det er et billede, skal det vises i browseren,
mens det skal hentes, hvis der er tale om en for browseren ukendt
MIME-type.

>> 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

Klart nok, men det kunne jo være, der var en eller anden essentiel
header, jeg manglede, og at det var derfor, Konqueror gik ned.

--
Venlig hilsen
Jonas Koch Bentzen

Anders Johannsen (25-07-2001)
Kommentar
Fra : Anders Johannsen


Dato : 25-07-01 00:26

Jonas Koch Bentzen wrote in dk.edb.internet.webdesign.serverside.php:
> Hej -

> 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"). 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.

Man kunne ty til empiri. Lokaliser et par filer der kan downloades efter
hensigten, og kig hvilke headere der udsendes vha f.eks.:

http://www.pil.dk/features/http.php

Siden er dog blev lidt grafiktung på det sidste; man fristes næsten til at tro
den tilhører et web_design_firma.

En lille trick, som giver gavnlige resultater i de fleste browsere, er at
konstrurere din url ala:

http://www.johannsen.com/download.php/31513/pr0n.jpg

Jeg har oplevet at ved urls på formen

http://www.johannsen.com/download.php?id=31513&file=pr0n.jpg

insisterer browseren på at kalde filen 'download.php?id=31513&file=pr0n.jpg',
uanset hvor mange hints man giver den i form af headere

/A



--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagoiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Morten Blinksbjerg N~ (25-07-2001)
Kommentar
Fra : Morten Blinksbjerg N~


Dato : 25-07-01 12:33

> Man kunne ty til empiri. Lokaliser et par filer der kan downloades efter
> hensigten, og kig hvilke headere der udsendes vha f.eks.:
>
> http://www.pil.dk/features/http.php
>
> Siden er dog blev lidt grafiktung på det sidste; man fristes næsten til at tro
> den tilhører et web_design_firma.

Eller http://mbn.dk/q/ - de ligner lidt hinnanden

--
Morten Blinksbjerg Nielsen
http://www.mbn.dk/



Danni Finne (25-07-2001)
Kommentar
Fra : Danni Finne


Dato : 25-07-01 14:07

> Eller http://mbn.dk/q/ - de ligner lidt hinnanden

Er det med vilje der kommer et 0 nede i bunden når man slår en side op :)

/Danni



Peter Brodersen (25-07-2001)
Kommentar
Fra : Peter Brodersen


Dato : 25-07-01 16:06

On Wed, 25 Jul 2001 15:07:29 +0200, "Danni Finne" <danni@finne.dk>
wrote:

>> Eller http://mbn.dk/q/ - de ligner lidt hinnanden
>Er det med vilje der kommer et 0 nede i bunden når man slår en side op :)

Hvis det er et HTTP/1.1-request, og Transfer-Encoding er chunked, så
ja. Bemærk, at der løbende bliver angivet i hex hvor mange octets, der
følger.


--
- Pede
Professionel nørd

Anders Johannsen (25-07-2001)
Kommentar
Fra : Anders Johannsen


Dato : 25-07-01 14:09

Morten Blinksbjerg Nielsen wrote in dk.edb.internet.webdesign.serverside.php:
> > http://www.pil.dk/features/http.php
> >
> > Siden er dog blev lidt grafiktung på det sidste; man fristes næsten til at tro
> > den tilhører et web_design_firma.
>
> Eller http://mbn.dk/q/ - de ligner lidt hinnanden

Omend, selvfølgelig, at der ikke er fejl i din.

/A

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagoiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408943
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste