Archives du forum - Guppy 5 - Sujet n°129404
Bonjour à tous,
J'ai créé un formulaire en me servant du modèle de sample-form.php (version 5.02.00).
Ce formulaire fonctionne à tout point de vue lorsqu'il est placé en ligne sur un espace test hébergé chez LWS (qui héberge mon site www.71site.fr).
Il s'affiche correctement en local (serveur Uwamp entre autres) sur une sauvegarde du site où il est sensé être placé dans quelques mois.
Mais, sur ce site en ligne... www.lacompagniedeselles.fr (hébergé cher Ikoula), il ne s'affiche pas du tout !
J'ai juste une page blanche et le code source n'affiche que ... 1
C'est peu ...
Une suggestion avant que je ne fasse un scandale chez Ikoula ? que je songe fortement à quitter d'ailleurs...
Merci d'avance pour vos idées.
Cordialement,
Jean-Denis
GuppY 5.02.00
Système d'exploitation du serveur : Linux 3.2.0-4-amd64
PHP : 5.4.45-0+deb7u5 / MET=60 - ML=128M - UMF=128M - PMS=8M - MFU=20
URL du site : http://www.lacompagniedeselles.fr/
Plugins : Sommaire, ArchNwsl, Horloge, Devinette, Vitesse de Connexion
UA: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Device: computer
Résolution écran : 1440x900
www.71site.fr
Bonsoir Jean Denis,
le message d'erreur t'indique que la fonction PHPMailerAutoload() est déclarée deux fois. A mon avis, il doit y avoir deux appels au fichier PHPMailerAutoload.php situé dans le répertoire inc/mail/class/
Quoi qu'il en soit, on va ruser en éditant ce fichier PHPMailerAutoload.php situé dans le répertoire inc/mail/class/ et on va remplacer entre la ligne 24 et 31 le code suivant :
function PHPMailerAutoload($classname) { //Can't use __DIR__ as it's only in PHP 5.3+ $filename = dirname(__FILE__).DIRECTORY_SEPARATOR.'class.'.strtolower($classname).'.php'; if (is_readable($filename)) { require $filename; } }
par celui-ci :
if ( ! function_exists('PHPMailerAutoload')) { function PHPMailerAutoload($classname) { //Can't use __DIR__ as it's only in PHP 5.3+ $filename = dirname(__FILE__).DIRECTORY_SEPARATOR.'class.'.strtolower($classname).'.php'; if (is_readable($filename)) { require $filename; } } }
Cordialement
Bonsoir Jérôme,
Ta très astucieuse solution fonctionne parfaitement !
Le résultat du formulaire s'affiche et les différents mails sont envoyés et reçus...
Bravo et merci à toi
Peut-être la GT pourra-t-elle conserver ce bout de code ?
Quant à moi, il est adopté !
Très cordialement,
Jean-Denis
www.71site.fr
Bonjour à tous,
Citation : « Jean-Denis »
Ta très astucieuse solution fonctionne parfaitement !
Exact, mais je te propose celle qui suit, elle doit fonctionner et elle est préférable car à chaque montée de version de PhpMailer la modif sera à recommencer.
Dans le fichier inc/mail/phpmailer.inc tu as :
require 'class/PHPMailerAutoload.php';
tu remplaces require par require_once :
require_once 'class/PHPMailerAutoload.php';
Cela aura également l'avantage de gagner en rapidité lors d'envois en masse.
Bonjour Saxbar,
Je viens de tester ta solution et elle fonctionne également parfaitement. Bravo et merci !
Je vais donc laisser celle-là pour les deux raisons que tu as indiquées. J'imagine donc que le fichier inc/mail/phpmailer.inc sera modifié en conséquence dans la prochaine version et qu'il n'y aura plus à y revenir.
Encore merci à vous deux de passer du temps sur un souci tout à fait mineur... mais encore une fois, vos solutions me permettent d'un peu mieux comprendre comment cela peut fonctionner !
Très cordialement,
Bon dimanche à tous,
Jean-Denis
www.71site.fr
Bonjour à tous deux,
Citation : « JeanDenis »
J'imagine donc que le fichier inc/mail/phpmailer.inc sera modifié en conséquence dans la prochaine version et qu'il n'y aura plus à y revenir.
Ne t'inquiète pas. Vu que le problème venait d'un couic dans le code de guppy, la correction sera obligatoirement inscrite dans la prochaine version.
Cordialement.
[ 1 2 ] |