PHP forcer téléchargement de fichier (script)

Bonjour,
j'aimerais s'il vous plait que l'on puisse me créer un script pour forcer le téléchargement d'un fichier (n'importe extension), avec les variable envoyé par GET suivante:
<a class="lien" href="' . $protocol . 'monsite.fr/in/dl.php?file=' . $file . '&path='. $protocol .'monsite.fr/' . strstr($path, 'away') . '">   

--------------------------------------------------------------------------------------------------------------------

path='. $protocol .'monsite.fr/' . strstr($path, 'away') . '
=
path = http://monsite.fr/(repertoire du fichier)

et

file=' . $file . '
=
file=(Nom du fichier)
--------------------------------------------------------------------------------------------------------------------
merci de votre aide

1 réponse

  1. déjà résolu ici : https://forums.commentcamarche.net/forum/affich-2165116-php-forcer-le-download
    cf. le header php "Content-Type: application/force-download
    NB: attention car ce genre de script peut très vite représenter une faille de sécurité..
    1. J'ai déjà été voir et ça ne fonctionne pas car meme si je met n'importe quoi Le fichier n'est pas trouvée
      De plus:
      CELA ne répond pas a ma question
      J'aimeraidS un script déjà fait avec les variable que J'ai donné.
    2. pour CELA je créerai une fonction comme celle-ci qui recherche le fichier en question
      function findFile($basename, $targetdir) {  
       // definition des extensions recherchées  
       $allowedExt = array('txt', 'pdf','jpg');  
       // listing du répertoire cible  
       // src : http://php.net/manual/fr/class.dir.php  
       $d = dir($targetdir);  
       // pour chaque entrée  
       while (false !== ($entry = $d->read())) {  
        // pour chaque extension  
         foreach($allowedExt as $ext) {  
           $filename =  $basename . "." . $ext;  
           // le fichier avec l'extension courante existe-t-il ?  
           if (is_readable($filename)) {  
             $d->close();  
              // au premier fichier correspondant retour du nom du fichier  
             return $filename;  
           }  
         }  
       }  
       $d->close();  
       // aucun fichier n' a été trouvé, FALSE est retourné 
       return FALSE;  
      }  
      


      par rapport à la demande, pour spécifier le répertoire de recherche (2e argument) on pourra procéder ainsi :
      $curentPath = dirname(__FILE__) 
      $targetdir = $curentPath . "/" . $path; 
      


      on peut faire une solution qui colle parfaitement à la demande maintenant on peut aussi essayer de comprendre comment çà marche..

Discussions similaires

question pix mot caché

7 réponses