Forcer un téléchargement

Une astuce pour webmaster

Il arrive quelques fois que le fichier que vous proposez en téléchargement sur votre site s'ouvre directement au lieu de proposer le téléchargement. Voici un petit script en php qui résoudra votre problème, quelque soit le format de votre fichier, txt, jpg et autres.

Tout d'abord, créer une page sur votre site internet qui s'appellera download.php et coller uniquement ce code à l'intérieur sans rien d'autre.

<?php
header("Content-disposition: attachment; filename=$filname");
header("Content-Type: application/force-download");
header("Content-Transfer-Encoding: binary");
readfile($dir);
?>

Ensuite, il suffit de coller le code ci-dessous dans la page ou vous voulez afficher votre téléchargement.

<?php
$filname="toto.pdf";
$dir="chemin_complet_vers_le_fichier/";
?>
<a href="download.php?dir=<?=$dir?>&filname=<?=$filname?>">toto</a>

Remplacer toto.pdf par le nom de votre fichier et chemin_complet_vers_le_fichier/ par l'url du fichier du type http://www.site.fr/telechargements/toto.pdf.
Voilà, c'est tout !


Vous pouvez télécharger cette astuce sous forme de fichier texte en cliquant sur ce lien : forcer téléchargements.