Cannot modify header information - headers already sent by

Résolu
shaloine -  
 shaloine -
Bonjour,

pour commencer je tien a dire que je ne connais rien au php, du coup j'essaie un peu comme je peu

voici mon probleme, j'ai un site sur lequel j'essai de securiser l'acces à certains document
j'utilise le tuto de cette adresse:
http://www.siteduzero.com/informatique/tutoriels/empecher-le-telechargement-direct-de-fichiers/forcer-le-telechargement-des-fichiers

j'essaie deja de le mettre sur une page simple afin de voir si cela marche mais on me renvoi

Warning: Cannot modify header information - headers already sent by (output started at /htdocs/public/www/img/telechargement/fr/formation/essai.php:1) in /htdocs/public/www/maPage/essai.php on line 7

voici le code
<?php
function telecharger_fichier($fichier)
{
 $chemin = 'fichier/' . $fichier;
 if(file_exists($chemin))
 {
  header('Content-Description: File Transfer');
  header('Content-Type: application/octet-stream');
  header('Content-Disposition: attachment; filename=' . basename($chemin));
  header('Content-Transfer-Encoding: binary');
  header('Expires: 0');
  header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  header('Pragma: public');
  header('Content-Length: ' . filesize($chemin));
  readfile($chemin);
  exit; 
 }
 else
  require('erreur.php');
}
telecharger_fichier('monFichier.pdf');
?>


c'est tout ce qu'il y'a dans mon fichier
le warning s'affiche pout chacune des ligne header() (je ne les vous pas toutes mises histoire de pas saturer)

merci d'avance pour votre aide

1 réponse

  1. shaloine
     
    ptite precision, je ne sais pas si cela a une importance
    mais dans le dossier un se trouve monfichier.pdf

    il y a un fichier .htaccess avec ces lignes

    Order allow,deny
    Deny from all
    Satisfy All
    0