Vous êtes ici Codes PHP et MySQL > Fichiers-Répertoires > Création massive de fichiers zip

 

Création massive de fichiers zip

Vous désirez zipper tous vos articles, vos fiches produits ou autres types d'enregistrements. Ce code devrait vous y aider.
Il procède en 3 étapes : 1 Création d'un fichier temporaire ou le contenu sera sauvegarder. 2 Création du fichier zip. 3 copie du fichier zip sur le serveur. Le code est dans une boucle while car nous parcourons tous les champs de la table pour notre création massive de fichiers zippés.
Mettez ce code dans une page et lancez le script après avoir renseigner les différentes valeurs. A la fin du déroulement du script vous devriez avoir un fichier zip qui va se lancer automatiquement. C'est le dernier fichier zippé resté dans l'entête. Tout va bien ;)

Important:

N'oubliez pas de télécharger la librairie ZIP. L'adresse est dans le code source.
 
KOogar
Site de l'auteur voir
[65] sources en PHP voir
Code vu 6490 fois
Enregistré le 05 Fév 2008
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Création massive de fichiers zip
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Création massive de fichiers zip                          */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts338-PHP.htm              */
/* Auteur         : KOogar                                                    */
/* Date édition   : 05 Fév 2008                                               */
/* Website auteur : http://www.koogar.fr                                      */
/*                                                                            */
/******************************************************************************/


/******************************************************************************* 
    * Adresse de la librairie ZIP
    ***************************************************************************/ 

//   http://www.phpsources.org/zip/zip.lib.zip

/******************************************************************************* 
    * connection sql 
    ***************************************************************************/ 
$connection mysql_connect("localhost","root","motdepasse"); 
if ( ! $connection ) 
die ("connection impossible");  
$mabasededonnee="Client"mysql_select_db($mabasededonnee) or die ("pas de connection");  

$table_sql "";  // nom de votre table

/******************************************************************************* 
    * lib
    ***************************************************************************/ 

require("zip.lib.php") ; //indiquez le chemin d'accès à la librairie

/******************************************************************************* 
    *  requete + creation du zip
    ***************************************************************************/
$result mysql_query("SELECT * FROM $table_sql");
while ($row mysql_fetch_array ($result)) {

$texte $row['texte'];
$idx $row['id'];
/******************************************************************************* 
    *  Nom des fichiers
    ***************************************************************************/
//  nom du fichier temporaire
$nom_file "code$idx";
$nom_file .= ".php";

// c'est ici que vous construisez votre fichier !!!!!!!!!!!!!!!!!!!!!!!!!!!
// ex ! archive-12-code.zip
//
$nom_zip "archive-$idx";
$nom_zip .= "-code.zip";
//

$f fopen($nom_file"x+");
fputs($f$texte );
fclose($f);

$zip = new zipfile() ; //on crée un fichier zip
$fp fopen($nom_file,'r') ; //on ouvre le fichier en lecture seule
$contenu fread($fpfilesize($nom_file)) ; //on enregistre le contenu
fclose($fp) ; //on ferme FTP

$zip->addfile($contenu$nom_file) ; //on ajoute le fichier

$archive $zip->file() ; //on associe l'archive

header('Content-Type: application/x-zip') ; //on détermine les en-tête
header('Content-Disposition: inline; filename='.$nom_zip.'') ;

/*******************************************************************************
    *  Copie du fichier zip sur le serveur
    ***************************************************************************/
$open fopen($nom_zip"wb");
fwrite($open$archive);
fclose($open);

unlink($nom_file);  // destruction du fichier temporaire

/*******************************************************************************
    *  Fin
    ***************************************************************************/
}

?>


 

Fonctions du code

: Ouvre une connexion à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Alias de la fonction exit() - (PHP 4, PHP 5)
: Sélectionne une base de données MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: - (PHP 4, PHP 5, PECL mysql:1.0)
: Ouvre un fichier ou une URL - (PHP 4, PHP 5)
: Alias de fwrite() - (PHP 4, PHP 5)
: Ferme un fichier - (PHP 4, PHP 5)
: Lit la taille d'un fichier - (PHP 4, PHP 5)
: Lecture du fichier en mode binaire - (PHP 4, PHP 5)
: Envoie un en-tête HTTP - (PHP 4, PHP 5)
: Écrit un fichier en mode binaire - (PHP 4, PHP 5)
: Efface un fichier - (PHP 4, PHP 5)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Fichiers-Répertoires

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité