Låt oss säga att jag har en fil på servern direkt under c:\ som heter hej.txt. Jepp, du missar ganska mycket. Du säger att du ska skicka med en fil som _heter_ "c:\hej.txt", men skickar sedan ingen fil. Rimligtvis borde du skriva ut innehållet i filen också. Tackar, tänkte inte på att jag måste skriva ut filen, slutresultatet blev såhär:Hämta fil från serverns hd?
Vi vill jag att när man surfar in på t.ex. hej.php så ska filen hämtas.
Jag har försökt med något sånt här:
<code>
$filePath = 'c:\hej.txt';
header('Content-type: application/txt');
header('Content-Disposition: attachment; filename=' . $filePath);
exit;
</code>
Men det verkar inte fungera, är det något jag missar här?
Felet jag får (tyker upp i en popup-ruta) är:
---------------------------
Windows Internet Explorer
---------------------------
Internet Explorer kan inte hämta hej.php från login.pbs.fi.
Det går inte att öppna den här webbplatsen. Platsen är inte tillgänglig eller så går den inte att hitta. Försök igen senare.
Tar jag bort phpheader-koden fungerar det bra.
NOTERA: Det här är ett förenklat exempel, min situation är lite mera invecklad.Sv: Hämta fil från serverns hd?
Sökte på google efter "php print file", och andra träffen är den här sidan: http://www.w3schools.com/PHP/php_file.asp. Jag har dock ingen aning om sidan är vettig eller inte, men kommer nog lösa problemet i ditt fall, även om jag inte är säker på om det är det mest optimala direkt... (Jag kan inte php)Sv:Hämta fil från serverns hd?
<code>
header("Pragma: public");
header("Expires: 0"); // set expiration time
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Transfer-Encoding: binary");
header('Content-Disposition: attachment; filename="' . basename($filePath) . '"');
header('Content-Length: '. filesize($filePath));
header('Content-type: ' . $mimetype->getType($filePath));
readfile($filePath);
</code>