Bonjour Roland,
Absolument, Je passe bien deux fois dans mon code. Comme je fais un Update en mysql, j’ai ajouté un test pour vérifier si la mise à jour est déjà effectuée, et dans ce cas je n’envoie pas le mail.
je n’avais pas pensé à ta méthode.
Mais pourquoi donc ce double passage, et pourquoi pas 3, 4 voire plus ?
Je n’ai malheureusement pas le temps de m’appesantir sur ce phénomène. Dommage.
Merci beaucoup Roland.
Mes envois de mails clients doublonnent !
Réduire
X
-
Le visiteur a répondu
-
Hello.
Envoyé par lendrevi Voir le messageAucune réponse. Je m’en sors en ajoutant un test supplémentaire. Mais intellectuellement, je reste sur ma fin.
A priori ton code est correct.
Rien ne permet de trouver pourquoi le mail est doublé.
De mon côté j'utilise la classe mailer régulièrement, sans avoir ce problème.
Je fais juste un peu plus de tests sur la validité des mails avant l'envoi en utilisant :
Code PHP:if($mailer->addRecipient($email)->isError()){
Es-tu sur que ton code n'est pas appelé 2x ?
Rajoute par exemple l'heure de passage avecCode PHP:$body .= '<br />génération' . microtime();
Si ce n'est pas le cas, c'est que tu appelles 2x ton code.
Bon dev.Dernière édition par roland_d_alsace à 09/09/2019, 18h26
Laisser un commentaire:
-
Le visiteur a réponduAucune réponse. Je m’en sors en ajoutant un test supplémentaire. Mais intellectuellement, je reste sur ma fin.
Laisser un commentaire:
-
guest_started_a_topic_y_with_prefixMes envois de mails clients doublonnent !
Bonjour,
Mon environnement : J 3.9.11, php 7, JFactory
Côté "admin", mes réglages de mails fonctionnent -cf. mes tests d'envoi- soit en utilisant "php mail", soit avec "Sendmail" (un test de fonctionnement avec Smtp ne marche pas, pb d'authentification : je ne l'utilise donc pas pour l'instant).
Côté "front-end" : quand j'envoie un mail à un utilisateur, le mail arrive sans problème ... mais il doublonne systématiquement (le client en reçoit 2 exemplaires dans la foulée). J'ai lu la doc, vu les forums, mais je ne trouve pas d'explication et surtout de voie de correction.
Voici les lignes écrites :
Code PHP:$mailer = JFactory::getMailer();
$config = JFactory::getConfig();
$sender = array($config->get( 'mailfrom' ),$config->get( 'fromname' ) );
$mailer->setSender($sender);
$subject = "Votre réservation ...";
$user = JFactory::getUser();
$recipient = $user->email;
$mailer->addRecipient($recipient);
$mailer->setSubject($subject);
$body = "<br /><br />Madame, Monsieur, <br /><br />Nous vous confirmons votre réservation ...etc...";
$mailer->Encoding = 'base64';
$mailer->isHTML(TRUE);
$mailer->setBody($body);
$envoi = $mailer->send();
etc...
Tags: Aucun
Annonce
Réduire
Aucune annonce pour le moment.
Laisser un commentaire: