[php] Download...Comment faire?

Résolu
Comme il est indiqué dans le titre : je souhaiterais que l'on me
fournisse le code (avec explication si possible) en php pour
permettre à l'utilisateur de télécharger une page du site dynamique
que j'effectue.

On m'a conseillé ce code :

$fichier = "dossier/tonfichier.ext";
header("Content-disposition: attachment; filename=$fichier");
header("Content-Type: application/force-download");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($fichier));
header("Pragma: no-cache");
header("Expires: 0");
readfile($fichier);

Néanmoins, en précisant que cela devait être placé avant la moindre balise html (de mon index.php), daonc la question est : où dois je mettre ce code ?

Merci d'avance.

--
sRh

3 réponses

  1. Fais attention, si tu passes la variable du nom de fichier à télécharger, ça pourrait permettre de télécharger presque n'importe quel fichier sur ton site ou même sur le serveur. Sinon, filename=$fichier enverra le chemin complet du fichier comme si c'était son nom. Il suffit de mettre filename=".basename($fichier)); pour que seul le nom du fichier soit envoyé, sans le reste du chemin.
    1. Bonjour,

      Tu réponds toit meme à la question:

      Néanmoins, en précisant que cela devait être placé avant la moindre balise html (de mon index.php), daonc la question est : où dois je mettre ce code ?

      Tu mets donc ce code avant la balise <html> en prenant soin de ne mettre aucun espace avant.
      1. Bonjour,

        j'aimerai créer une page téléchargements sur mon site, mais je trouve pas le formulaire qui me permet de mettre des fichiers en ligne, de facon a ce que les visiteurs puissent les télécherger...

        help please