Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2745 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Forcer le téléchargement

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Forcer le téléchargement

n°1283844
mikedimoi
Posté le 15-01-2006 à 03:19:32  profilanswer
 

Salut à tous !
 
J'ai un probleme lorsque je tente de forcer le téléchargement de fichier.
 
Voici mon script :
 
1) le fichier telecharge.php
 

Code :
  1. <?php
  2.  
  3.  
  4.  
  5. header("Content-type: application/force-download" );
  6. header("Content-Length: ".filesize($urlComplete));
  7. header("Content-Disposition: attachment; filename=$nomFichier" );
  8. readfile("$urlComplete" );
  9.  
  10. ?>


 
2) ma_page.php
 

Code :
  1. $nomFichier = "$file";
  2. // laisser vide si le fichier se trouve dans le même rep
  3. $urlComplete= "http://mon_url/dossier/".$nomFichier;
  4. $nomFichier = str_replace(" ","%20",$file);
  5. ?>
  6. <a href="telecharge.php?urlComplete=<? echo $urlComplete; ?>&nomFichier=<? echo $nomFichier; ?>"><center><font color='#800080'>Télécharger</font></center></a>


 
La boîte de dialogue s'ouvre bien, le téléchargement se fait bien mais tous les fichiers font environ 220Ko !!
Il est donc inutiles de vous dire que les mp3 sont illisibles !
 
D'où vient ce problème s'il vous plaît ?
 
Merci d'avance


Message édité par joce le 15-01-2006 à 03:46:34
mood
Publicité
Posté le 15-01-2006 à 03:19:32  profilanswer
 

n°1283863
Sebou77
French Tech powaa :-)
Posté le 15-01-2006 à 11:16:20  profilanswer
 

Si c'est la taille des fichiers qui changent ça n'a peut être rien à voir avec ton code :heink:
T'as testé avec un autre type de fichier ? :sarcastic:

n°1283888
mikedimoi
Posté le 15-01-2006 à 12:42:18  profilanswer
 

Salut !
 
Oui, j'ai testé avec plusieurs fichiers.
 
Pour un mp3 de 4mo, il me semble quand même grave qu'il ne fasse plus que 220ko au final !

n°1283957
Dj YeLL
$question = $to_be || !$to_be;
Posté le 15-01-2006 à 14:31:08  profilanswer
 

1) telecharge.php
 

Code :
  1. <?php
  2. if(isset($_GET['nomFichier'])) {
  3.    $nomFichier = $_GET['nomFichier'];
  4.    $urlComplete= "http://mon_url/dossier/".$nomFichier;
  5.    if(!file_exists($urlComplete)) {
  6.        die('Le fichier n\'existe pas');
  7. } else {
  8.    die('Vous devez spécifier un fichier à télécharger');
  9. }
  10.  
  11. header('Content-type: application/force-download');
  12. header('Content-disposition: attachment; filename="' . $nomFichier . '";');
  13. header('Content-Transfer-Encoding: binary');
  14. header('Pragma: no-cache');
  15. header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
  16. header('Expires: 0');
  17. header('Content-Length: ' . filesize($urlComplete));
  18. //Lecture du fichier à envoyer :
  19. readfile($urlComplete);
  20. ?>


 
2) ma_page.php
 

Code :
  1. <?php
  2. $nomFichier = "$file"; // <<== pas compris l'intérêt de cette ligne par contre ...
  3. echo '<a href="telecharge.php?nomFichier=' . $nomFichier . '">Télécharger</a>
  4. ?>


 
Et utilise les CSS :o
 
:D
 
 
Edit : je viens de l'écrire direct sur le forum alors à vérifier si je n'ai pas fais d'erreurs.


Message édité par Dj YeLL le 15-01-2006 à 14:32:13

---------------
Gamertag: CoteBlack YeLL
n°1283981
mikedimoi
Posté le 15-01-2006 à 14:58:51  profilanswer
 

Salut DjYell ! Merci pour ta réponse !
 
J'ai reussi à trouver entre temps et n'ai pas eu le temps de venir poster pour vous tenir au courant.  
Désolé.
 
En fait, comme la plupart du temps d'ailleurs, l'erreur est toute simple !
 
Il suffisait de remplacer :
 

Code :
  1. <a href="telecharge.php?urlComplete=<? echo $urlComplete; ?>&nomFichier=<? echo $nomFichier; ?>"><center><font color='#800080'>Télécharger</font></center></a>


 
par  
 

Code :
  1. <a href="telecharge.php?urlComplete=<? echo $urlComplete; ?>&nomFichier=<? echo $file; ?>"><center><font color='#800080'>Télécharger</font></center></a>


 
Merci beaucoup pour ton aide


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Forcer le téléchargement

 

Sujets relatifs
Telechargement a partir d'un site flashgestion de téléchargement de fichiers
Lien de téléchargement en fonction de la date ?[resolu]Forcer telechargement header() prob dans include() help
[php] Forcer le téléchargement d'une imageForcer le téléchargement d'un fichier txt ou html
forcer les téléchargement en asp[PHP] forcer le téléchargement avec DAP par exemple
[ PHP ] fOrcer le téléchargement d'un fichier .txt[javascript php html] comment forcer le telechargement d'un fichier
Plus de sujets relatifs à : Forcer le téléchargement


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR