Toon posts:

[ASP] .pdf-bestand downloaden i.p.v. openen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Om een .pdf-bestand te downloaden heb ik een asp-pagina, met daarin:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
response.contenttype="application/x-unknown"
response.addheader "Content-Disposition","attachment; filename=" & chr(34) & "Wedstrijdkalender Yngling 2002.pdf" & chr(34)

response.binarywrite getBinaryFile(server.mappath("/yngling/wedstrijden/kalender2002.pdf"))

function getBinaryFile(fileSpec)
Dim adTypeBinary
adTypeBinary = 1
Dim oStream
set oStream = server.createobject("ADODB.Stream")
oStream.Open
oStream.Type = adTypeBinary
oStream.LoadFromFile fileSpec
getBinaryFile= oStream.read
set oStream=nothing
end function

Bij het openen van deze pagina (in IE) kun je kiezen voor "Open this file from its current location" of "Save this file to disk"
Als ik kies voor "opslaan", gaat het allemaal goed, maar als ik kies voor "openen", krijg ik zo'n nieuw venstertje, waar ik weer moet kiezen voor "downloaden" of "openen". Als ik dan voor "openen" kies, gaat het goed, maar dit is dus eigenlijk een stap te veel.

Is hier een oplossing voor?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

content-type op "application/x-pdf" zetten ?

Verwijderd

Topicstarter
content-type op "application/x-pdf" zetten ?
Nopez, werkt niet..... :(

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

it's all in the headers...

zorg eerst dat je de juiste headers stuurt, en daarna de stream met gegevens.

Headers in php:
PHP:
1
<?header("Content-Type: application/octetstream");    header("Content-Length: $size"); // $size = filesize van $doc    header("Pragma: no-cache");    header("Expires: 0");    header("Content-Disposition:$attachment filename=$doc"); // $doc = de naam van het bestand @ client    header("Content-Transfer-Encoding: binary");?>

Stop uploading passwords to Github!


Verwijderd

Topicstarter
Heb je mijn vraag gelezen, of alleen de titel?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

En als je trouwens die content-disposition weglaat, werkt het dan wel? (inclusief de goede header voor een pdf-file)

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

Ok. ik snap nu beter wat je wilt, je wilt niet alleen de download aanbieden, maar ook nog dat ze hem dan gelijk kunnen openen.

Volgens mij gaat dat uberhaupt niet werken. Ik heb een eeuw lopen klooien met headers, maar volgens mij is het óf óf...

i wish u luck.

Stop uploading passwords to Github!


Verwijderd

Ik los dit meestal op door in ASPupload van Persits een download script van de plank te pakken. Werkt errug goed. En mocht je deze niet hebben dan kan je hem toch gewoon binair sturen?
Pagina: 1