Jump to content

Page blanche lors de l'enregistrement d'un nouveau client


Recommended Posts

Bonsoir à tous,

 

Je viens de terminer la migration de mon site et tout c'est bien déroulé, sauf que je viens de constater que je ne peux créer un nouveau compte client, j'obtiens une page blanche, j'ai donc activé le mode debug et voici ce que cela m'affiche (je précise que malgré la page blanche, le compte est bien crée dans le back office

 

Warning: include_once(/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift.php): failed to open stream: No such file or directory in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 18

Warning: include_once(): Failed opening '/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift.php' for inclusion (include_path='/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/htmlpurifier/standalone:.:') in /var/www/vhosts/vps1.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 18

Warning: include_once(/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Connection/SMTP.php): failed to open stream: No such file or directory in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 19

Warning: include_once(): Failed opening '/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Connection/SMTP.php' for inclusion (include_path='/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/htmlpurifier/standalone:.:') in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 19

Warning: include_once(/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Connection/NativeMail.php): failed to open stream: No such file or directory in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 20

Warning: include_once(): Failed opening '/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Connection/NativeMail.php' for inclusion (include_path='/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/htmlpurifier/standalone:.:') in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 20

Warning: include_once(/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Plugin/Decorator.php): failed to open stream: No such file or directory in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 21

Warning: include_once(): Failed opening '/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/swift/Swift/Plugin/Decorator.php' for inclusion (include_path='/var/www/vhosts/vps.ovh.net/httpdocs/arg.com/tools/htmlpurifier/standalone:.:') in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 21

Fatal error: Class 'Swift_RecipientList' not found in /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php on line 107

 

Je précise que j'ai remplacer la table PS_MAIL par celle de l'ancien site qui était sur la même version PS 1.6.1.7 (refont graphique avec changement de thème en local donc fusion de certaines bases voir mon thread ici https://www.prestashop.com/forums/topic/600942-resolu-syncrho-de-2-bases-de-donn%C3%A9es-ou-comment-mettre-%C3%A0-jour/

 

Qu'en pensez vous?

Link to comment
Share on other sites

Il me semble que c'est une erreur du à une MAJ antérieur de prestashop (bien avant que je ne modifie le site) car le chemin des fichiers n'existe plus sur la 1.6.1.7

 

Ce qui m'étonne c'est que sur l'ancien thème graphique je n'ai jamais eu de problèmes pour la création de comptes clients.

 

Qu'en pensez vous?

 

PS : Lorsque j'ai appliqué la MAJ je n'ai pas eu d'erreur.

Link to comment
Share on other sites

Bon c'est bien un problème de la fonction Mail... J'ai désactivé l'envoi d'un mail de bienvenu lorsque que l'on crée un compte client et ça fonctionne. C'est mieux que rien, le temps de débugger

 

Pour info je viens de faire une clean install de la même version PS 1.6.1.7 sur mon vps chez ovh (en PHP5.5), j'ai tout laissé par défaut (en faite je n'ai rien modifié, à peine installer je test :) )

 

Boum même problème, mais pire j'ai une belle page blanche lorsque je vais dans Paramètres avancés -> E-Mail

 

Erreur en FO

Fatal error: Class 'Mail' not found in /var/www/vhosts/vps2.ovh.net/argxxxxseil.fr/controllers/front/AuthController.php on line 754

 

En BO

Fatal error: Class 'Mail' not found in /var/www/vhosts/vps2.ovh.net/argxxxxseil.fr/controllers/admin/AdminEmailsController.php on line 118

 

C'est quand même embêtant pour une clean install entièrement par défaut (bouh presta on fait la moitié du boulot :wacko: )

Link to comment
Share on other sites

Bon nouveautés,

 

J'ai renommé le fichier /var/www/vhosts/vps.ovh.net/httpdocs/arg.com/override/classes/Mail.php en MailOLD.php et ça fonctionne, ce fichier est donc corrompu, mais j'aimerais savoir quel est l'incidence si on le supprime (à quoi sert il?) De même est il possible d'avoir ce fichier qui ne bug pas ou à défaut comment le corriger?

Link to comment
Share on other sites

Bonjour,

 

Les fichiers présents des override furent ajoutés par des modules lors de leur installation ou manuellement pour surcharger une fonction de base de PrestaShop.

 

Ils ne sont indispensables que pour l'utilité qu'ils ont, encore faut il savoir pourquoi ils sont là.

 

Il faut donc chercher quel module aurait pu faire cette installation ou savoir pourquoi ce fichier fut créé dans le passé.

Link to comment
Share on other sites

Ok je pense que c'est le module contact form (d'artemic), c'est le seul module que j'avais acheté qui permettait de créer des formulaires de contact avec envoi de mail, je suppose donc que c'est lui qui qui a généré ce Mail.php dans l'override malheureusement quand on désactive, désinstalle et supprime ce module via le back office cela ne supprime pas l'override.

 

Pour les autres modules, soit ce sont ceux qui accompagnent le thème et qui n'ont aucune interaction avec la fonction mail, soit ce sont des modules pour le front office qui n’interagisse pas avec mail (product extra tabs...). Le seul module que j'avais acheté et installé lorsqu'on était sur l'ancien thème et en version PS 1.6.0.5 est le contact form d'artemic. 

 

J'ai donc desactiver, désinstaller et supprimer ce module, je renomme le Mail.php dans l'override et je test le fonctionnement complet de mon site pour vous dire si c'est bien lui.

Link to comment
Share on other sites

pour savoir si un module override un fichier il suffit de regarder dans le répertoire du module si il y a un répertoire override mais il faut aussi, par sécurité, chercher tous les fichiers ce nommant Mail.php dans le dossier module, des fois qu'un développeur se soit pris d'une idée de contourner les méthodes de base de PrestaShop pour l’installation d'un module.

 

Après cela, si aucun module n'est concerné, vous pouvez renommer cet override car certainement qu'il fut mis en place pour un e vielle version et qu'il n'est plus compatible, mais il serait bien d'analyser aussi son code pour savoir ce qu'il faisait, car peut être que la fonction géré par cet override est juste indispensable pour l'activité de ce commerce.

  • Like 1
Link to comment
Share on other sites

Bonjour,

 

J'ai donc tout vérifié et c'était le module contact form d'artemic et son override qui posait problème. Une fois le module désinstallé, supprimé et renommer son override Mail.php tout est rentré dans l'ordre. J'ai updaté mon site en 1.6.1.12 et tout est stable.

 

Par contre petite question, lorsque je m'envoi un mail depuis le BO sur mon adresse wanadoo, je reçois le mail 1 fois sur 10 avec beaucoup de retard, par contre sur toutes mes autres adresses pas de soucis. Sauriez vous pourquoi je rencontre ce problème sachant mon serveur ainsi que nom de domaine n'est pas listé en blacklist?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...