webForumDet fria alternativet

skicka fil

5 svar · 384 visningar · startad av bohlin

bohlinMedlem sedan mars 2000263 inlägg
#1

jag har en fil (c:\fil.zip) som jag vill skicka till en användare. Man kan ju inte redirecta till localhost/fil.zip precis.
jag provade med
readfile("c:\\fil.zip");
men jag fick bara upp filen i browsern.

sen provade jag med
Header("Content-type: application/x-zip-compressed");
readfile("c:\\fil.zip");

men det gick inte.

hur gör man?

------------------
/bohlin

petergrennanetMedlem sedan dec. 1999258 inlägg
#2

Vad ar det for fel pa header("location: fil.zip"); ??
Du vill ju skicka filen.

------------------
peterbe.com

bohlinMedlem sedan mars 2000263 inlägg
#3

filen ligger utanför http-roten.

men det kasnke går ändå...jag får la prova lite

------------------
/bohlin

Gislaved.netMedlem sedan juni 20001 521 inlägg
#4

Kan man använda file:// istället för http:// då? :)

------------------
Gislaved.net - Ett roligare Internet!

SweyMedlem sedan apr. 20003 971 inlägg
#5

Detta borde fungera.

header("Content-disposition: filename=filnamn");
header("Content-type: application/octetstream");

------------------
 - Swey
Projekt wF PHP

sgtpepperMedlem sedan apr. 20007 588 inlägg
#6

Om filen ligger utanför webbrooten så får du öppna den och sedan läsa in innehållet och skriva det till klienten:

<?php
	
	header("Content-disposition: filename=$openFile");
	header("Content-type: application/octetstream");

	
	$fp = fopen($openFile, "r");
	
	while (!feof($fp))
	{
		print fread($fp, 4096);
	}
	
	fclose($fp);

?>

Anropas t.ex visafil.php?loadFile=files.zip

------------------

1010011010 - The binary number of the beast

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)