Maison > développement back-end > tutoriel php > Comment corriger l'erreur « Échec de la connexion SMTP() » lors de l'envoi d'e-mails via Gmail ?

Comment corriger l'erreur « Échec de la connexion SMTP() » lors de l'envoi d'e-mails via Gmail ?

Mary-Kate Olsen
Libérer: 2024-10-21 17:47:49
original
968 Les gens l'ont consulté

How to Fix

Échec de la connexion SMTP : résolution de l'erreur « Échec de la connexion SMTP() »

En essayant d'envoyer des e-mails à l'aide de Gmail, vous pouvez rencontrer une erreur message indiquant "SMTP -> ERREUR : Échec de la connexion au serveur : Délai de connexion expiré (110) Échec de nSMTP Connect(). Le message n'a pas été envoyé. Erreur nMailer : Échec de SMTP Connect()." Cette erreur indique un problème d'établissement d'une connexion au serveur SMTP.

Pour résoudre ce problème, vous devez modifier le code PHP chargé de l'envoi des emails. Plus précisément, supprimez ou commentez la ligne :

<code class="php">$mail->IsSMTP();</code>
Copier après la connexion

La méthode IsSMTP() est obsolète et ne doit pas être utilisée. En supprimant ou en commentant cette ligne, le code utilisera automatiquement SMTP pour l'envoi d'e-mails, éliminant ainsi le problème de connexion et permettant une livraison réussie des e-mails.

Voici le code mis à jour avec la modification :

<code class="php">require 'class.phpmailer.php'; // path to the PHPMailer class
require 'class.smtp.php';

$mail = new PHPMailer();

$mail->Mailer = "smtp";
$mail->Host = "ssl://smtp.gmail.com";
$mail->Port = 587;
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "[email&#160;protected]"; // SMTP username
$mail->Password = "mypasswword"; // SMTP password 
$Mail->Priority = 1;

$mail->AddAddress("[email&#160;protected]","Name");
$mail->SetFrom($visitor_email, $name);
$mail->AddReplyTo($visitor_email,$name);

$mail->Subject  = "Message from  Contact form";
$mail->Body     = $user_message;
$mail->WordWrap = 50;  

if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal