Page 1 sur 1

Téléchargement de produit corrompt les fichiers

MessagePublié: 02 Déc 2012, 10:02
par Morgwen
Bonjour,

J'ai un problème avec une boutique que je viens d'ouvrir aux acheteurs. Nous vendons un livre, à la fois au format papier et au format numérique.
Pour le format papier, je n'ai aucun souci.
Pour le format numérique, j'utilise l'option "Téléchargements" du catalogue.

Mes acheteurs peuvent acheter le livre, le téléchargement du fichier est bien disponible quand on passe au statut de commande payé, le compteur fonctionne bien (ils ne peuvent télécharger le fichier qu'une seule fois) mais le fichier téléchargé est corrompu.

Mon fichier (un .epub, ce qui correspond à une archive zip, au final) fonctionne très bien sur ma liseuse. Je le charge via la console d'admin, le commande et le télécharge et là, le fichier est corrompu et ma liseuse ne peut plus le lire.
J'ai essayé de le charger en FTP et de modifier le nom du fichier dans la base pour qu'il corresponde.
J'ai essayé de modifier le nom du fichier et du résultat téléchargé en base pour m'assurer qu'il n'y ait aucun caractère spécial ni espace.
J'ai essayé de modifier les droits du répertoire download/ en mettant 777.
Rien n'y fait, le fichier téléchargé est toujours corrompu.

Est-ce que quelqu'un sait d'où peut provenir le problème ? Sinon, est-ce que je peux le contourner en utilisant un module complémentaire ?

En attendant, je suis obligée d'envoyer l'e-book par mail à chaque acheteur. C'est faisable mais la grande force de cette boutique était, qu'à la base, les acheteurs voulaient pouvoir payer par paypal et télécharger l'e-book immédiatement, même quand je ne suis pas disponible pour le leur envoyer.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 02 Déc 2012, 10:50
par Imaxine
Morgwen a écrit:J'ai essayé de le charger en FTP et de modifier le nom du fichier dans la base pour qu'il corresponde.
Pourquoi est-tu obligé de changer le nom, je ne comprend pas cette procédure, peux-tu developper ?

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 02 Déc 2012, 11:08
par Morgwen
Pour définir un téléchargement, je suis obligée de passer par la console d'admin qui ne me propose que des fichiers sur mon PC.
Ce que je voulais dire, c'est que je me suis connectée par FTP pour charger le fichier dans le répertoire download/ et, pour que ça corresponde au fichier défini dans la console d'admin, j'ai changé la valeur du champ "filename" dans la table "download".

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 02 Déc 2012, 11:15
par Imaxine
Je ne comprend pas, tu as sur ton ordi un fichier (e'book) qui se nomme ebook.zip ou ebook.pdf, tu le charges sur ton serveur dans le répertoire /download/ via ton FTP, il n'y a pas lieu de modifier quoi que cela soit ?

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 02 Déc 2012, 11:34
par Morgwen
Dans la console d'admin, dans le menu Catalogue > Téléchargements, j'ai un téléchargement qui s'appelle "Rêves Froissés".
Dans les propriétés de ce téléchargement, j'ai chargé mon fichier "reves_froisses_V3.epub" via le bouton "Choisissez un fichier" dans "Nom du fichier".
Le fichier chargé dans mon répertoire download s'appelle "reves_froisses_epub_V3.epub.34c683455da38d019b39c96e73921517".

Dans mon catalogue, j'ai un produit "Rêves froissés (eBook)" qui est associé au téléchargement "Rêves Froissés" dans l'onglet Liens des propriétés du produit.


Les tests divers que j'ai pu faire en base ou sur FPT avant, je les ai annulés et je reste à un fonctionnement, je l'espère, standard.
Quand je parlais de zip, c'est parce que le format epub n'est qu'une sorte de zip renommé. C'était juste à titre indicatif, des fois qu'il y ait pu y avoir des problèmes avec le téléchargement de fichiers compressés.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:08
par Morgwen
Pour information, j'ai testé les fichiers chargés depuis la console d'admin en le retéléchargeant sur mon PC via FTP et il n'y a pas de souci : le fichier est intact.
Si je le télécharge via la page des téléchargements de ma boutique : le fichier est corrompu.

J'ai essayé de comparer les deux fichiers mais je n'y vois aucune différence (du moins dans le contenu). Est-ce qu'il pourrait y avoir un problème de header ou un truc comme ça lors du téléchargement ?

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:18
par Imaxine
Il peut toujours y avoir un risque que des fichiers se corrompent en effectuant le transfert. Pour cela je te suggère de recharger les fichiers initiaux à ta version (si tu n'as pas fait de modification de ceux-ci ou sur les tiens) et de transférer tes fichiers via FTP en mode binaire si tu utilises FileZilla > Transfert > Type de transfert > Binaire.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:34
par Morgwen
C'est déjà ce que j'ai testé.

Mon dernier test en date :
- je télécharge mon fichier epub
- je le renomme reve_froisse.zip
- je le dézippe
- je le rezippe
- je renomme le nouveau zip en reve_froisse.epub

Et là, ça fonctionne... :cry:

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:38
par Imaxine
Comme je te le disais transfère tes fichiers en mode binaire, les autres modes peuvent corrompre les fichiers.

Si tout fonctionne désormais, il ne te reste qu'à mettre la petite icône de résolution dans le titre initial du sujet.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:48
par Morgwen
C'est ce que je disais : je transfère toujours mes fichiers en mode binaire quand je fais du FTP.
Mon fichier sur le serveur n'est pas corrompu puisque si je le download (en mode binaire), il fonctionne.

Par contre, comment puis-je, dans la page des téléchargements de la boutique, m'assurer que le téléchargement se fasse en mode binaire ?

Quand je disais que ça fonctionnait, c'est après avoir plein de manipulations sur un fichier téléchargé. Je ne peux décemment pas demander à mes acheteurs de s'amuser à modifier des extensions / dézipper / rezipper un fichier qu'ils ont acheté.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 09:53
par Imaxine
Comme je te l'ai déjà dit, il se peut que des fichiers d'Opencart soient corrompus suite à un transfert, recharge tous les fichiers initiaux d'Opencart et refais un test ensuite.

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 10:34
par Morgwen
Au temps pour moi, je n'avais pas compris ce que tu voulais dire.

J'ai retéléchargé les fichiers de downloard du site d'opencart france, rechargé les fichiers sur mon serveur en FTP, en binaire, ouvert ma console d'admin, supprimé le téléchargement existant, recréé un nouveau téléchargement et testé.
Toujours pareil.

Mon epub validator me donne le message d'erreur
I/O error: error in opening zip file
. Je vais farfouiller du côté des charset, faute de mieux...

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 10:40
par Imaxine
Quels messages d'erreur y a t-il dans le journal d'erreurs ?

Re: Téléchargement de produit corrompt les fichiers

MessagePublié: 05 Déc 2012, 10:50
par Morgwen
Code: Tout sélectionner
2012-12-05 14:11:33 - PHP Warning:  unlink(/home/herosdep/www/boutique/download/) [<a href='function.unlink'>function.unlink</a>]: Is a directory in /home/herosdep/www/boutique/admin/controller/catalog/download.php on line 120
2012-12-05 14:11:33 - PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/herosdep/www/boutique/admin/index.php:79) in /home/herosdep/www/boutique/system/engine/controller.php on line 28
2012-12-05 14:11:33 - PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/herosdep/www/boutique/admin/index.php:79) in /home/herosdep/www/boutique/system/engine/controller.php on line 29