1

Sujet : Archive ZIP corrompu

Bonjour,

Lorsque je telecharge les photos de mon panier, l'archive les contenant est corrompu sad
J'ai fait des essais avec un Mac, PC windows et mon Linux. Depuis chez moi (adsl 1024) et depuis le boulot (liaisons T1).

Apres differents essais il semble que lorsque le serveur de l'hebergeur n'est pas trop charge (le matin tot) ca fonctionne certaine fois.

Les erreurs que j'ai pu glaner sur le probleme de l'archive sont :

Avec File Roller 2.18.1 (winzip like)
End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.

Avec unzip (en ligne de commande)
Archive:  Photos.zip
error [Photos.zip]:  missing 4096 bytes in zipfile
  (attempting to process anyway)
error [Photos.zip]:  attempt to seek before beginning of zipfile
  (please check that you have transferred or created the zipfile in the
  appropriate BINARY mode and that you have compiled UnZip properly)
  (attempting to re-compensate)

Avec unzip j'obtient les images, quelques fois une images est "abimee".
C. a. D. l'image est coupee en deux verticalement et les deux parties sont inversees (j'ai ete clair la ?)

Je voulais modifier la facon de recuperation de l'archive en forcant la creation puis en proposant un lien pour le telechargement. (cf http://jebulle.net/index.php?rubrique=panier CreeArchive( [STRING] $sNomFichier [, [BOOLEAN] $bEcritureSeulement] ) )

Helas j'ai comme un doute. Il semble que cela ne soit pas/plus possible avec CreerArchive actuelle ?
Confirmes-tu ou bien j'ai rate qqchose ?

Si le probleme t'interesse, tu peux faire des essais avec cette adresse http://jerome.mauro.free.fr/albulle_test/upload/
C'est une install toute fraiche et sans modif de albulle1.0rc6

Merci
Bernard

Re : Archive ZIP corrompu

Bonjour Bernard,

J'ai fait un test à l'instant et je n'ai eu aucune erreur. Une personne qui a posté récemment à eu le même problème. A savoir que sur Free, selon la charge de leurs serveurs, les archives téléchargées sont bonnes ou pas...

Quand à forcer la création des archive sur disque, cela n'est plus possible (mon site n'est pas à jour...).

-------------------------------
"Keyboard not detected, press a key to continue..."

WWW

3

Re : Archive ZIP corrompu

Bonjour,

J'ai moi aussi fait des tests ce matin et l'archive "arrive" quasi instantanement et elle est valide !!!

Tanpis pour CreerArchive.
Merci de ta reponse.

Bernard

4

Re : Archive ZIP corrompu

Bonjour,

J'ai installé Albulle sur mon serveur local Win2k + EasyPhp et j'ai eu ce problème de fichiers ZIP corrompu.

Le problème est que le buffer d'envoi n'est pas vide au début de la transmission (9 octets dans mon cas) et que donc les 9 octets de fin du fichier ne sont pas transmis.

Pour y remédier, j'ai remplacer l'instruction flush() en commentaire dans OMZip.php par ob_end_clean() et depuis plus de soucis.

Autres problèmes rencontrés en PHP 5 :
----------------------------------------------
  -1- Il faut définir dans php.ini la variable date.timezone = "Europe/Paris" pour éviter les messages d'erreurs qui sont transmis lors de la transmission du fichier zip.

  -2- Dans la classe panierdefichiers, j'ai modifie la méthode verifierChemin en rajoutant la fonction realpath sur la variable $this->_sRoot ; sinon le caractère "/" de fin n'est pas supprimé ou remplacé par un "\".

function verifierChemin( $sChemin )
{
  $sCheminReel = realpath($this->_sRoot.$sChemin);
  return ( is_string($sCheminReel) && (strpos($sCheminReel,realpath($this->_sRoot)) !== false) );
}

Sans faire cela, impossible d'ajouter des images dans le panier !!!

Pascal

Re : Archive ZIP corrompu

Bonjour Pascal,

Merci beaucoup pour cette remarque constructive. Je prendrai tout ça en compte dès que je me recollerai dans le code !

-------------------------------
"Keyboard not detected, press a key to continue..."

WWW

6

Re : Archive ZIP corrompu

Bonjour, j'ai essayé la manip en changeant la valeur dans le fichier OMzip.php, cependant, il y a toujours une erreur dans l'archive, Winrar me met qu'elle est endommagé.