1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Utiliser PHPMailer sur Infomaniak
Ce guide explique comment utiliser PHPMailer avec les hébergements Web Infomaniak.
Préambule
- PHPMailer est une librairie permettant d'envoyer des e-mails depuis un site Web au format HTML.
- Cette dernière permet notamment la prise en charge des pièces jointes, et le support de l'authentification SMTP et du multipart/alternative pour les clients qui ne peuvent pas lire les e-mails au format HTML.
Utiliser PHPMailer
Pour utiliser PHPMailer, il est nécessaire de l'installer manuellement:
- Cliquez ici afin de télécharger la librairie PHPMailer.
- Copiez les fichiers dans un répertoire de votre site Web par FTP.
Faites le lien entre votre script et PHPMailer, p.ex:
require_once('chemin_a_modifier/class.phpmailer.php');
RĂ©soudre une erreur Sender mismatch
Dans le protocole SMTP (Simple Mail Transfer Protocol), l'en-tête "From" spécifie l'adresse mail de l'expéditeur du message. Il s'agit de l'adresse qui apparaîtra dans le champ "De" du message reçu par le destinataire.
Dans PHPMailer, la méthode 'setFrom' est utilisée pour définir l'adresse mail de l'expéditeur, tandis que l'en-tête 'From' est utilisé pour spécifier cette même adresse lors de l'envoi du message. La méthode 'setFrom' définit également le champ 'Reply-To' de l'e-mail.
L'erreur Sender mismatch SMTP code: 550 Additional SMTP info: 5.7.1
se produit donc lorsque l'adresse mail spécifiée dans le champ 'setFrom' ne correspond pas à l'adresse mail spécifiée dans l'en-tête 'From' lors de l'envoi du message. Pour éviter cette erreur:
Au lieu d'utiliser la méthode 'setFrom' pour définir l'adresse e-mail de l'expéditeur, utilisez la propriété 'From' de l'objet PHPMailer, p.ex:
$mail = new PHPMailer(); $mail->From = 'expediteur@domain.xyz';
Assurez-vous que la valeur spécifiée dans la propriété 'From' correspond exactement à l'adresse mail utilisée dans le champ 'setFrom'. P.ex, si vous utilisez 'setFrom' avec un nom d'expéditeur comme ceci :
$mail->setFrom('expediteur@domain.xyz', 'Nom Expediteur');
alors assurez-vous que que la valeur de 'From' est également définie avec le nom d'expéditeur :
$mail->From = 'expediteur@domain.xyz'; $mail->FromName = 'Nom Expediteur';
Ensuite, continuez la configuration et l'envoi de l'e-mail normalement.