Una cosa sola devo cambiare quello che ho messo in rosso e basta?
Funziona anche in una semplice pagina in html? come se fosse uno script o altro?
Codice:
<?php
// definisco una variabile con il percorso alla cartella
// in cui sono archiviati i file
$dir = "/root/www/download/";
// Recupero il nome del file dalla querystring
// e lo accodo al percorso della cartella del download
$file = $dir . $_GET['filename'];
// verifico che il file esista
if(!file)
{
// se non esiste chiudo e stampo un errore
die("Il file non esiste!");
}else{
// Se il file esiste...
// Imposto gli header della pagina per forzare il download del file
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename= " . $file);
header("Content-Transfer-Encoding: binary");
// Leggo il contenuto del file
readfile($file);
}
?>
Salviamo questo codice come force-download.php ed utilizziamolo in questo modo:
force-download.php?filename=miofile.doc