come posso fare per scaricare un file utilizzando le funzioni di header?
possibilmente che sia compatibile anche con IE
Printable View
come posso fare per scaricare un file utilizzando le funzioni di header?
possibilmente che sia compatibile anche con IE
intendi passare l'intero file via php oppure semplicemente fare un redirect usando header()?
nel secondo caso basta che fai
se invece vuoi farlo scaricare per intero via php (sconsigliato per files grossi) devi inviare il content tipe del file, il nome ed il contenuto...Codice PHP:Header("Location: http://www.sito.foo/url/file.ext");
intendevo passare l' intero file(..?mime-type ecc..)
http://it2.php.net/readfile
nel codice postato sopra restano comunque 2 problemi:Codice PHP:<?php
header ("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header ("Content-Type: application/octet-stream");
header ("Content-Length: " . filesize($theFile));
header ("Content-Disposition: attachment; filename=$theFileName");
readfile($theFile);
?>
il mimetype e la dimensione...
non puoi infatti far scaricare file che superino il memory limit (max 7mb) e comunque passare i files in quel modo è molto più oneroso e lento rispetto ad aprire un connessione http diretta...
per il mime type invece devi scriverlo tu a mano oppure usare una qualche classe già pronta :=D:
edit: per il mime type puoi usare anche questa:
http://it2.php.net/manual/it/functio...ntent-type.php
grazie x la tempestiva risposta. Volendo approfondire l' argomento con esempi hai qualche link da indicarmi?
beh...
www.php.net/header
in aggiunta ai primi due... sono utilissimo soprattuto i commenti degli utenti ;)