questo è il classico codice
Codice PHP:
<?php
// definisco una variabile con il percorso alla cartella
// in cui sono archiviati i file
$dir = $_SERVER['DOCUMENT_ROOT'].'/documenti_da_scaricare/';
// Recupero il nome del file dalla querystring
// e lo accodo al percorso della cartella del download
$file = $dir . $_GET['id'];
// 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);
}
?>
e questa la classica chiamata
Codice PHP:
<a href="script_php/download.php?id=catalogo_museo_di_arte_povera.pdf">
non so come mai ma mi scarica un file che ha il nome dell'intero percorso che al posto degli slash ha gli underscore e che ovviamente non è il file linkato di fatti è di 1kb invece che 500kb. in più aprendolo da errore.
il nome del file viene così :_web_htdocs_www.museodiartepovera.com_home__docum enti_da_scaricare_catalogo_museo_di_arte_povera.pd f
che succede?
mille grazie