Salut à tous!
J'ai fait un site pour l'école où je dois charger des fichiers que les utilisateurs peuvent télécharger. J'ai fait une page download.php qui force le téléchargement. J'arrive à télécharger les fichiers mais pas à les ouvrir.
Est-ce que quelqu'un pourrait m'aider?
Merci d'avance!
ma page upload qui se lance apres le formulaire :
$tmp_name=$_FILES['fichier']['tmp_name'];
$titre = $_FILES['fichier']['name'];
$taille = $_FILES['fichier']['size'];
$type = STRSTR($_FILES['fichier']['name'],".");
$point=strrpos($titre,".");
$titre=substr($titre,0,$point);
$fichier = $_FILES['fichier']['name'];
ma page document :
<a href="dl.php?dl=<?php echo 'fichiers/'.$doc['doc_fichier']; ?>">Télécharger</a></td>
//$doc['doc_fichier'], c'est le nom du fichier avec extension
ma page download :
if(isset($_GET['dl'])){
$fichier=$_GET['dl'];
switch(strrchr(basename($fichier), ".")) {
case ".gz": $type = "application/x-gzip"; break;
case ".tgz": $type = "application/x-gzip"; break;
case ".zip": $type = "application/zip"; break;
case ".pdf": $type = "application/pdf"; break;
case ".png": $type = "image/png"; break;
case ".gif": $type = "image/gif"; break;
case ".jpg": $type = "image/jpeg"; break;
case ".txt": $type = "text/plain"; break;
case ".htm": $type = "text/html"; break;
case ".html": $type = "text/html"; break;
default: $type = "application/octet-stream"; break;
}
$fic=substr($fichier,9); //retire le début du chemin pour prendre le nom
header("Content-Transfer-Encoding: $type\n");
header('Content-Disposition: attachment; filename="'.$fic.'"');
header('Content-Length: '.filesize($fichier));
readfile($fichier);
}