Avatar billede straszek Praktikant
06. september 2003 - 14:23 Der er 18 kommentarer og
1 løsning

download file

jeg har på min side et link til en tekstfil test.txt. Hvordan kan jeg bestemme at denne fil skal download og ikke åbens i browseren?

Søren
Avatar billede jakobclausen Nybegynder
06. september 2003 - 14:25 #1
Pak den med WinZip/WInrar
Avatar billede straszek Praktikant
06. september 2003 - 14:26 #2
Ikke en mulighed
Avatar billede jakobclausen Nybegynder
06. september 2003 - 14:26 #3
Hvad der sker når man klikker på et link på en hjemmeside er afhængig af hvilke indstillinger brugere har lavet i browseren. Så du kan på ingen måde sikre dig at der vil ske det samme ved alle brugere hvis du linker til en .txt fil.
En zip eller en rar fil kan browseren ikke forstå så derfor vil der dukke en download boks frem, uanset hvilke indstillinger brugeren har.

Du kan også skrive at man skal bruge:

Højreklik -> gem destination
Avatar billede repsak Nybegynder
06. september 2003 - 14:27 #4
det er vist noget klienten bestemmer og ikke dig...
Avatar billede jakobclausen Nybegynder
06. september 2003 - 14:29 #5
Du skriver at det ikke er en mulighed, men de eneste tre muligheder du har er:

(1) Linke til en pakke fil
(2) Skriv at man skal højreklikke og vælg gem destination
(3) Lad txt filen åbne i browseren
Avatar billede straszek Praktikant
06. september 2003 - 14:30 #6
Filen bliver genereret dynamisk udfra et db utræk i php, og kan derfor ikke pakkes.
Avatar billede fangel Nybegynder
06. september 2003 - 14:30 #7
eller bruge et server-side script som fx PHP til at tvinge en download

Morten
Avatar billede straszek Praktikant
06. september 2003 - 14:31 #8
Og hvodan skulle det mon gøres?
Avatar billede jakobclausen Nybegynder
06. september 2003 - 14:34 #9
Jamen så er den eneste løsning (2) eller (3)
Avatar billede fangel Nybegynder
06. september 2003 - 14:37 #10
<?php

$content = "jeg er indeholdet af .txt filen!";
$size = strlen($content);
$filname = "jeg_hedder_fil.txt";

header(\"Cache-Control: no-cache, must-revalidate\");
header(\"Pragma: no-cache\");
header(\"Content-Disposition: inline; filename=$filename;\");
header(\"Content-Length: $size\");
header(\"Content-Type: application/octetstream\");

print $content;

?>

---

men Content-Type skal måske være "application/x-msdownload" istedet for "application/octetstream" - prøv at test

Morten
Avatar billede hcichosz Praktikant
06. september 2003 - 14:39 #11
lav en ActiveX Control med en knap der henter din txt sæt den ind på siden så bliver den downloadet
Avatar billede fangel Nybegynder
06. september 2003 - 14:39 #12
hov, skal være sådan her:

<?php

$content = "jeg er indeholdet af .txt filen!";
$size = strlen($content);
$filename = "jeg_hedder_fil.txt";

header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
header("Content-Disposition: inline; filename=$filename;");
header("Content-Length: $size");
header("Content-Type: application/octetstream");

print $content;

?>

kan ses i aktion her:

http://mfa.ath.cx/test-download.php

Morten
Avatar billede fangel Nybegynder
06. september 2003 - 14:40 #13
hcichosz => og hvad så med os der bruger Linux - nå ja, ActiveX er MS - så det virker ikke, gør det? nej det tror jeg nok heller ikke det gør!
Avatar billede hcichosz Praktikant
06. september 2003 - 14:48 #15
men ok ikke den bedste løsning men det kan gøres
Avatar billede straszek Praktikant
06. september 2003 - 16:00 #16
>dea_pg

Det ser spædndende ud, men jeg er ikke helt med. Min fil hedder data.txt - og er genereret ud fra at mysql db udtræk. Hvad skal jeg indsætte i $content?

Søren
Avatar billede fangel Nybegynder
06. september 2003 - 16:26 #17
fx
readfile('data.txt');
eller
inplode("",file('data.txt'));

Morten
Avatar billede straszek Praktikant
06. september 2003 - 17:52 #18
Nu fatter jeg endnu mindre.....
Avatar billede fangel Nybegynder
06. september 2003 - 18:27 #19
<?php

$filename = 'data.txt';
$content = readfile($filename);
$size = filesize($filename);

//headers

print $content;

?>

Morten
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