[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.
    5
    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.
      0
      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
        -4