Maison > développement back-end > tutoriel php > Pourquoi ne puis-je pas envoyer d'e-mails via le serveur SMTP de Gmail avec PHPMailer ?

Pourquoi ne puis-je pas envoyer d'e-mails via le serveur SMTP de Gmail avec PHPMailer ?

Patricia Arquette
Libérer: 2024-12-18 07:53:10
original
722 Les gens l'ont consulté

Why Can't I Send Emails via Gmail's SMTP Server with PHPMailer?

Impossible d'envoyer un e-mail via le serveur SMTP de Gmail avec PHPMailer : résolution du problème d'authentification SMTP

Lorsque vous essayez d'utiliser le serveur SMTP de Gmail pour transmettre des e-mails à l'aide PHPMailer, vous pouvez rencontrer l'erreur « SMTP AUTH est requis pour l'envoi de messages sur le port 587. » Cette erreur indique la nécessité d'une authentification avant d'envoyer des e-mails. Voici comment résoudre ce problème :

Pour remédier à ce problème, les modifications suivantes sont nécessaires :

$mail = new PHPMailer(); // New PHPMailer object
$mail->IsSMTP(); // Enable SMTP protocol
$mail->SMTPDebug = 1; // For debugging (log errors and messages)
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->SMTPSecure = 'ssl'; // Utilize Secure Socket Layer (SSL) for secure transmission (required for Gmail)
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; // Or 587 depending on server settings
$mail->IsHTML(true); // Allow HTML-formatted emails
$mail->Username = "johndoe@gmail.com"; // Your Gmail username
$mail->Password = "mysecretpassword"; // Your Gmail password
$mail->SetFrom("sender@gmail.com"); // Set sender address
$mail->Subject = "Test Email";
$mail->Body = "Hello from PHPMailer!";
$mail->AddAddress("recipient@gmail.com"); // Add recipient address

if (!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Email sent successfully!";
}
Copier après la connexion

Considérations clés :

  • Assurez-vous que la vérification en deux étapes est désactivée pour le compte Gmail concerné.
  • Vérifiez que votre serveur SMTP prend en charge SSL ou Connexions TLS.
  • Si le problème persiste, essayez de régler le paramètre « SMTPSecure » sur « tls » au lieu de « SSL ».

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.cn
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