|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : mars 2009 Messages : 3 ![]() |
Bonjour à tous,
Je me permets de poster ici car après avoir décortiqué toutes les possibilités de mon code, je bloque sur un point. Il s'agit au juste d'une fonction pour zipper, elle fonctionne à merveille ce n'est pas le soucis, elle compresse même plusieurs dossiers et fichiers ensemble. Là où est mon soucis c'est que lorsque je lance le script et qu'il compresse, il créer un dossier général au lieu de me zipper tous mes dossiers et fichiers à la racine tels quels. Ce que je veux c'est que lorsque je décompresse mon .zip, l'extraction soit de tous les fichiers et non d'un dossier général qui les regroupe tous qui a été créé lors de la compression. Voici la classe pour zipper (zip.lib.php) : Code: Code :
Code: Code :
Si quelqu'un à la solution pour que ça compresse tel quel sans dossier principal, merci d'avance car j'ai eu beau chercher, je crois qu'en fin de journée je ne vois plus rien. Merci encore d'avance. Loyd |
||||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : septembre 2010 Messages : 7 102 ![]() |
demande à l'auteur de la classe, sinon pourquoi utiliser une classe PHP alors que PHP gère le Zip...
http://php.net/manual/fr/book.zip.php
__________________
http://blog.stealth35.com/ |
|
|
10
|
|
|
#3 |
|
Membre chevronné
![]() Développeur Web Inscription : mars 2011 Messages : 399 ![]() |
Si j'en crois le code de ta classe, la fonction addfile() ajoute les fichiers dans un dossier central.
A moins de revoir totalement ta classe et de bien te mettre à apprendre la structure d'un fichier zip en hexa, je te conseille comme le conseille stealth35 d'utiliser la classe native de PHP. Tout hébergeur sérieux l'ont (même en mutualisé), par contre, de mémoire, celle-ci est désactivé sur les serveurs de free. |
|
00
|
|
|
#4 |
|
Invité de passage
![]() Alexandre Étudiant Inscription : mars 2011 Messages : 2 ![]() |
Bonjour juixo,
Je pense avoir la solution à ton problème. La fonction $zip->addfile() te permet de spécifier le fichier que tu veux ajouter dans ton archive et de le renommer. L'espace ou tu le renommes est le second paramètre de cette fonction. Ainsi quand tu écris : $zip->addfile($contenu, $filename[$a]); Ton fichier ajouté à l'archive se nommera "dossier/fichier1" dans le cas où a = 0. La fonction reproduira l'arborescence que tu donnes dans ce second paramètre. En revanche, si tu remplaces $filename[$a] par "fichier1", la fonction t'ajoutera ton fichier sans arborescence. |
|
|
10
|
Copyright © 2000-2012 - www.developpez.com