Je rencontre un problème ces derniers temps, je crée un site d’événementielle et pour chaque inscription à un événement l'utilisateur doit Valider son inscription à l’événement par mail. Mais le problème est que certaine personne ne reçoivent pas du tout le mail, d'autres oui, et d'autres au bout de plusieurs essaies le reçoivent.
J'ai commencé a coder avec la simple fonction mail() en php puis pour essayer de contourner le problème je suis donc passé à l'utilisation de phpmailer ( vous allez me dire pas grande différence ) à par que je passe maintenant par un smtp spécifique ( oui on peut le faire avec mail() mais plus rapide avec phpmailer =D ).
Mais le problème persiste ( même problème concernant l'inscription au site donc on peut retirer l'hypothèse de " si on envoie trop de mail sa bloque " comme la personne même au bout de 1 ça peut bloquer ! ). Donc je suis la pour exposer mon problème et si possible trouver des solutions.
Voici mon code php :
$sujet = "Activer l'inscription de l'evenement " . $_SESSION['nomEvent'];
$message = 'Bonjour ,
Vous allez activer l\'evenement : ' . $_SESSION['nomEvent'] . '
Le montant de l\'inscription est de : ' . $_SESSION['prixTotal'] . ' €
Veuillez cliquer sur le lien suivant pour valider votre inscription :
http://xxxxxxxxxxxxxxxxxxxx/activation.php?idEvent=' . urlencode($ajoutEvent->getId()) . '&cle=' . urlencode($cle) . '
---------------
Ceci est un mail automatique, Merci de ne pas y répondre.';
envoiMail($_SESSION['email'],$sujet,$message);
function envoiMail($adresseMail, $sujet, $message) {
define('GUSER', '[email protected]'); // GMail username
define('GPWD', 'xxxxxxx'); // GMail password
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'ssl';
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->Username = GUSER;
$mail->Password = GPWD;
$mail->SetFrom('[email protected]', 'xxxxxxxxxx');
$mail->Subject = $sujet;
$mail->Body = $message;
$mail->AddAddress($adresseMail);
if (!$mail->Send()) {
echo $error = 'Mail error: ' . $mail->ErrorInfo;
return false;
} else {
echo $error = 'Message envoyer!';
return true;
}
}
Je précise je suis sur l'hébergeur online.Merci d'avance,
Cordialement,
Doc Donkun