telechargement zip

telechargement zip - PHP - Programmation

Marsh Posté le 10-06-2010 à 10:48:37    

bonjour, j'ai un petit souci avec la librairie lib.zip.php
 
je créer des fichiers pdf, je les stock dans un zip jusqu'ici pas de problème
 
ensuite au lieu d'afficher le zip ou de le stocker sur le serveur je veux donner la main à l'utilisateur pour le telecharger.
 
mon problème est qu'avec le code php ci-dessous l'utilisateur a la possibilité de telecharger un fichier php portant le nom de ma page.
cependant lorsque je telecharge ce fichier et que je modifie l'extension en .zip le zip fonctionne bien...  
 

Code :
  1. $monpdf = $PDF-> Output('', 'S');
  2. $monpdf2 = $PDF-> Output('', 'S');
  3. $monpdf3 = $PDF-> Output('', 'S');
  4. //on le zip
  5. $zip = new zipfile();
  6. $zip->addfile($monpdf,'pdf1.pdf');
  7. $zip->addfile($monpdf2,'pdf2.pdf');
  8. $zip->addfile($monpdf3,'pdf3.pdf');
  9. $archive_zip = $zip->file();
  10. header('Content-Type:application/x-zip');
  11. header('Content-Disposition; inline; filename=monfichier.zip');
  12. echo $archive_zip;


 
Comment faire pour qui l'utilisateur telecharge directement le fichier "monfichier.zip"...???
 
merci

Reply

Marsh Posté le 10-06-2010 à 10:48:37   

Reply

Marsh Posté le 10-06-2010 à 12:31:13    

salut
 
essaye ca :  
 
remplace inline par attachment
 
header("Content-type: application/zip" );  
header("Content-Disposition: attachment; filename=$rep[id_commande].zip" );  
echo ($archive_zip);

Reply

Marsh Posté le 10-06-2010 à 14:34:26    

le resultat est le même, je ne comprend pas mon problème car j'ai exactement la même chose et même syntaxe que sur pas mal de sites et tuto...

Reply

Marsh Posté le 10-06-2010 à 14:40:42    

Code :
  1. $newFileName = str_replace( ".php" , ".zip" , basename($_SERVER['PHP_SELF']) );
  2. header("Pragma: public" );
  3. header("Expires: 0" );
  4. header("Cache-Control: must-revalidate, post-check=0, pre-check=0" );
  5. header("Content-Type: application/x-zip" );
  6. header("Content-Length: ".filesize($archive_zip));
  7. header("Content-Disposition: attachment;filename=$newFileName " );
  8. //header("Content-Transfer-Encoding: binary" );
  9. readfile($archive_zip);


Message édité par antac le 10-06-2010 à 14:41:07
Reply

Marsh Posté le 10-06-2010 à 14:44:04    

essaye en  
 

Code :
  1. header("Content-Type: application/force-download" );
  2. header('Content-Disposition; inline; filename=monfichier.zip');
  3. echo $archive_zip;

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed