Gå til innhold

........................


Anbefalte innlegg

Videoannonse
Annonse

Det som er problemet her, er at nettleseren gjennkjenner filtypen som noe den kan åpne. Det du må (?) gjøre da er å bruke et serverside-skript til å tvinge frem nedlastingsdialogboksen. Med PHP kan det gjøres slik:

<?php

// downloading a file

$filename = $_GET['filename'];

 

// fix for IE catching or PHP bug issue

header("Pragma: public");

header("Expires: 0"); // set expiration time

header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

// browser must download file from server instead of cache

 

// force download dialog

header("Content-Type: application/force-download");

header("Content-Type: application/octet-stream");

header("Content-Type: application/download");

 

// use the Content-Disposition header to supply a recommended filename and

// force the browser to display the save dialog.

header("Content-Disposition: attachment; filename=".basename($filename).";");

 

/*

The Content-transfer-encoding header should be binary, since the file will be read

directly from the disk and the raw bytes passed to the downloading computer.

The Content-length header is useful to set for downloads. The browser will be able to

show a progress meter as a file downloads. The content-lenght can be determines by

filesize function returns the size of a file.

*/

header("Content-Transfer-Encoding: binary");

header("Content-Length: ".filesize($filename));

 

readfile("$filename");

exit();

 

?>

Lagre koden til filen download.php eller hva du nå måtte foretrekke.

Linkene lages da slik:

<a href="download.php?filename=filnavn.filendelse">Last ned</a>

 

Ikke testet, hentet fra http://www.onaje.com/php/article.php4/40

Husk at serveren dette skal fungere på må støtte PHP.

Lenke til kommentar

Merkelig, skriptet funker nemlig fint når jeg prøver det på mitt lokale oppsett. Hvis du får beskjed om at siden ikke kan vises, så har du mest sannsynlig skrevet inn feil filnavn. Er ikke helt sikker, men det kan også være det at du ikke har rettigheter til å lese filen. Prøv i CHMOD'e den til 777.

Lenke til kommentar
På egen maskin.

Må jeg laste ned noe PHP greier kanskje?

For å kunne bruke php-skripter på din egen maskin må du ha installert en webserver, for eksempel Apache, og deretter PHP. Dette kan være litt omfattende for nybegynnere, så det er kanskje ikke verdt å gjøre det. Du kan vel begynne med å fikse deg en "gratis" hjemmeside-konto hos start.no. Det eneste som koster er en sms du må sende for å låse opp kontoen din, men du får da 30mb lagringsplass og php-støtte.

Lenke til kommentar
Koster en webserver penger?

Hvis du tenker på å bruke din egen PC som server, så kan du bruke Apache. Gratis og meget bra.

Hvis du tenker på webhotell, altså at du kan laste opp din side til en eller annen server på internett, så koster det ikke alltid penger, men du får det du betaler for ;)http://www.servetheworld.com er å anbefale.

 

Nå spørs det hvor mange filer du vil at folk skal kunne laste ned, men hvis det ikke er så mange er det sikkert ikke bryet verdt å sette opp server og slikt. Da er vel det enkleste bare å putte de inn i noen zip-filer.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...