Avatar billede razmuz_dk Nybegynder
19. juli 2004 - 13:01 Der er 3 kommentarer og
1 løsning

Fil der printes fra php skal både kunne åbnes og downloades

Hej

Jeg sidder og kæmper med header() og readfile() i forbindelse med download/åbning af PDF-filer. Lige gyldigt hvordan jeg flytter rundt på de forskellige headers kan jeg simpelthen få mit scriptet til at kunne følgende:

Når brugeren venstreklikker på download.php?file_id=x via en <a href=""> skal filen åbnes. Når man åbner et nyt browser-vindue og indsætter "http://mitdomæne.dk/download.php?file_id=x" skal filen også åbnes. Men man skal også kunne trykke højreklik -> Gem som på <a>'en.
Kort sagt skal "download.php?file_id=x" reagere på samme måde som "pdf-fil.pdf" ville have gjort.

Gør jeg således:
------------------------------------------
header("Content-type: application/pdf");
readfile($file);
------------------------------------------
Så åbner filen uden problemer når man klikker på <a href="download.php?file_id=x">her</a>, men jeg kan ikke åbne den ved at åbne en ny browser og skrive:
"http://mitdomæne.dk/download.php?file_id=x". Højreklik->Gem Som virker dog fint, bortset fra at den ikke kan regne ud i procent hvor langt den er kommet (da Content-length:x ikke er sat) + at den ikke skriver det rigtige filnavn men blot "download.pdf".

Jeg kan så indsætte
------------------------------------------
header("Content-Disposition: attachment; filename=".$filename);
header("Content-length: ".$content_length);
------------------------------------------
Men så vil filen ikke åbnes, kun downloades.



Håber i forstår :-)
Avatar billede Syska Mester
19. juli 2004 - 13:21 #1
Tror du skal have en knap til hvert ting.
Avatar billede coderdk Praktikant
19. juli 2004 - 13:34 #2
Virker det med:

header("Content-type: application/octet-stream");
header("Content-Disposition: inline; filename=".$filename);
header("Content-length: ".$content_length);
readfile($file);

?
Avatar billede razmuz_dk Nybegynder
19. juli 2004 - 16:11 #3
Nope, den giver også fejl når man indsætter hele url'en i en ny browser:

Internet Explorer was not able to open this Internet site. The requested site is either unavailable or cannot be found. - når man trykker på Åbn eller Download.
Avatar billede razmuz_dk Nybegynder
09. september 2004 - 17:45 #4
lukker og slukker..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester