Posez votre question Signaler

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

adnbenji - Dernière réponse le 26 avril 2011 à 09:18
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
Lire la suite 
Réponse
+0
moins plus
déjà résolu ici : http://www.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é..
Adnbenji- 22 avril 2011 à 23:56
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é.
Répondre
boly38 269Messages postés mercredi 23 février 2011Date d'inscription 12 février 2014Dernière intervention - 26 avril 2011 à 09:18
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..
Répondre
Ajouter un commentaire
Ce document intitulé «  PHP forcer téléchargement de fichier (script)  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.