16
mar
2008
Extraire le contenu d’un zip directement sur son FTP chez free

Dans cette article nous allons voir comment procéder pour dézippé le contenu d’une archive directement sur son FTP free. Ceci peut être très intéressant si on a plusieurs (beaucoup) fichiers à envoyer sur le ftp, parfois ce genre d’upload peut s’avérer très difficile en fonction de la connexion, du logicile client FTP, mais aussi de l’humeur du serveur FTP de chez free. On peut se retrouver avec un certain nombre de fichiers qui ne seront pas envoyé (perdus en route ?!).

L’astuce consiste à mettre tous ses fichiers dans ZIP, uploader le zip sur le FTP et l’extraire sur place avec script PHP. Parce que envoyer UN SEUL fichier quelque soit sa taille, est toujours plus simple que d’en envoyer 36 000.

Pour commencer il faut savoir que Free ne propose aucune librairie PHP pour gérer les archives, donc nous utiliserons une classe de substitution, pour l’exemple, on va utiliser pclzip.

Maintenant, il faut créer un fichier ZIP (test.zip pour l’exemple) dans lequel on mettra tous nos fichiers à uploader sur le FTP.

Ensuite, il faut créer un fichier php (extract.php pour l’exemple) dans lequel on mettra le code suivant (à adapter selon votre cas) :

//Extrait de la documentation de la class.
require_once('pclzip.lib.php');
$archive = new PclZip('test.zip'); //METTRE LE VRAI NOM DU ZIP ;)
//Extrait dans le repertoire courant.
if ($archive->extract() == 0) {
      die("Error : ".$archive->errorInfo(true));
}

maintenant on se retrouve avec 3 fichiers :

  1. extract.php
  2. pclzip.lib.php
  3. test.zip

On peut maintenant envoyer nos 3 fichiers dans le répertoire sensé accueillir les fichiers finaux (contenus dans le zip) sur le FTP.

maintenant prendre son navigateur et aller à l’url http://adresse_du_site.free.fr/repertoire/extract.php

et le tour est joué :-)

N.B. Cette procédure et valable pour tout hébergement mutualisé (ou pas) ne proposant pas les extensions PHP Zlib ou équivalent.

1 Etoile2 Etoiles3 Etoiles4 Etoiles5 Etoiles (7 votes, note : 4.71 sur 5)

Catégories : PHP / MySQL, Programmation

12 commentaires pour “Extraire le contenu d’un zip directement sur son FTP chez free”

  1. frank dit :
    Le 04/08/2008 à 04:22:26

    thx it seems to work

  2. Magimel dit :
    Le 11/08/2008 à 17:10:46

    Les dossier ne sont pas décompresser par contre ? Il décompresse tous les fichier dans un seul endroit sans tenir compte de leur dossier d’origine !

  3. Naeh dit :
    Le 11/08/2008 à 17:58:38

    heu… J’avoue avoir fait un test rapide, j’ai pas souvenir d’un traitement particulier des dossiers/sous-dossier.

  4. marty dit :
    Le 27/08/2008 à 20:27:46

    la fontion

    function extract($p_path=”./”, $p_remove_path=”")

    permet de spécifier en premier parametre le répertoire où les fichiers sont extraits.
    DAns la version du pclzip.lib.php que j’ai téléchargé, j’ai simplement eu à modifier l’entête de cette fonction.

  5. Legends dit :
    Le 26/11/2008 à 19:52:44

    Heu désoler mais ça marche pas!

  6. Naeh dit :
    Le 26/11/2008 à 20:03:33

    Essayez encore, vous verrez que ça marche :-)

  7. Legends dit :
    Le 26/11/2008 à 20:07:26

    bas dans mon fichier extract je fais un copier coller de ce que vous avez fait, ensuite je clique sur extract sur mon site free et il me met ce qui est écrit dans le fichier extract.

  8. Naeh dit :
    Le 26/11/2008 à 20:11:55

    le code cité dans le billet est un exemple.

    est-ce que vous avez bien téléchargé la libraire pclzip ? l’avez vous mise sur votre hébergement free ?

    et ensuite le code ci-dessus n’est a prendre telquel, il faut déjà l’entourer de balises < ?php et ?> pour qu’il soit interprété et non pas affiché.

  9. Legends dit :
    Le 26/11/2008 à 20:41:06

    Désoler mais là je ne comprend pas trop!

  10. Legends dit :
    Le 26/11/2008 à 21:05:20

    Ha oui mais les balises je vois pas où les mettre la dessus! Je suis qu’un amateur du HTML!^^

  11. Naeh dit :
    Le 26/11/2008 à 21:12:06

    je vous conseille d’aller poser une question su un forum hardware.fr vous trouverez surement plus d’explications.

    bonne chance.

  12. adenov dit :
    Le 23/12/2008 à 12:06:05

    merci bokou, ça marche

Laisser un commentaire

Archives :

| décembre 2008 (1) | octobre 2008 (2) | septembre 2008 (3) | mai 2008 (1) | mars 2008 (4) | février 2008 (3) | décembre 2007 (16) | novembre 2007 (2) | juin 2007 (1) | mai 2007 (2) | avril 2007 (1) | mars 2007 (2) | février 2007 (1) | janvier 2007 (3) |
© 2009 Naeh.net | Thème par DemusDesign (Modifié par Naeh), Theme Lab | Powered by WordPress

Naeh.net