J'utilise PHPMailer dans un script simple pour l'envoi d'e-mails via Gmail et j'obtiens une "erreur inconnue" (du moins pour moi!):
Erreur SMTP: n'a pas pu authentifier. Erreur: Erreur SMTP: Impossible authentifier.
Erreur de serveur SMTP: 5.7.1 Nom d'utilisateur et Mot de passe non accepté. En savoir plus sur 535 5.7.1 http://mail.google.com/support/bin/answer.py?answer=14257 p38sm2467302ybk.16
J'ai lu sur Configurer OpenSSL pour les connexions SSL/TLS et je l'ai fait. Apache et PHP sont correctement configurés (avec l'extension OpenSSL s'exécutant sous PHP et mod_ssl sous Apache 2.2.16).
C'est le script PHP:
<?php
require_once ("PHPMailer\class.phpmailer.php");
$Correo = new PHPMailer();
$Correo->IsSMTP();
$Correo->SMTPAuth = true;
$Correo->SMTPSecure = "tls";
$Correo->Host = "smtp.gmail.com";
$Correo->Port = 587;
$Correo->UserName = "[email protected]";
$Correo->Password = "gmailpassword";
$Correo->SetFrom('[email protected]','De Yo');
$Correo->FromName = "From";
$Correo->AddAddress("[email protected]");
$Correo->Subject = "Prueba con PHPMailer";
$Correo->Body = "<H3>Bienvenido! Esto Funciona!</H3>";
$Correo->IsHTML (true);
if (!$Correo->Send())
{
echo "Error: $Correo->ErrorInfo";
}
else
{
echo "Message Sent!";
}
?>
Le nom d'utilisateur et le mot de passe sont corrects, et j'ai essayé dans Thunderbird, sans aucun problème. J'ai également utilisé l'authentification SSL et le port 465, obtenant la même erreur.
Essayez ceci à la place:
$ Correo -> Nom d'utilisateur = "[email protected]";
Je l'ai testé et il fonctionne parfaitement sans autre changement
J'ai rencontré ce problème. Pour que cela fonctionne, je devais accéder à myaccount.google.com -> "Connexion et sécurité" -> "Applications avec accès au compte", puis activer "Autoriser les applications moins sécurisées" (" vers le bas de la page).
c'est le problème de GMail
lisez cette aide Google ( https://support.google.com/mail/answer/14257?p=client_login&rd=1 )
J'ai reçu la même erreur et dans mon cas c'était le mot de passe. Mon mot de passe a des caractères spéciaux pour et si vous le fournissez sans échapper aux caractères spéciaux, l'erreur continuera à s'afficher. E.g $mail->Password = " por$ch3";
est valide mais ne fonctionnera pas avec le code ci-dessus. La solution devrait être la suivante: $mail->Password = "por\$ch3";
Notez la barre oblique inverse que j'ai placée avant le caractère dollar dans mon mot de passe. Cela devrait fonctionner si vous avez un mot de passe utilisant des caractères spéciaux
J'ai reçu cette erreur en raison de signes de pourcentage dans le mot de passe.
Pour moi, j'avais un caractère spécial dans mon champ mot de passe, et je l'ai mis comme $ mail-> Mot de passe = "por $ ch3" qui fonctionne pour le serveur gmail smpt mais pas pour les autres; donc je viens de changer les guillemets doubles en guillemets simples et cela fonctionne pour moi. $ mail-> Password = 'por $ ch3';
Si vous rencontrez toujours une erreur lors de l'envoi du courrier électronique, le même message d'erreur s'affichera Essaye ça:
$mail->SMTPSecure = 'tls';
$mail->Host = 'smtp.gmail.com';
juste avant la ligne:
$send = $mail->Send();
ou dans un autre sens, avant d'appeler la fonction Send ().
Testé et fonctionnel.
J'avais le même problème et ai suivi tous les conseils, y compris le réglage de Gmail (accès moins sécurisé aux applications, par exemple) sans succès Mais finalement, lorsque j'ai changé le mot de passe pour quelque chose de différent, pour une raison quelconque, cela a fonctionné! Pour votre information, le mot de passe initial ne comportait aucun caractère spécial.
[RESOLU]. J'ai rencontré la même erreur lors de la configuration du plugin WP-Mail-SMTP
dans Wordpress.
Le problème persisterait même après avoir vérifié trois fois les paramètres et les identifiants de connexion et pouvoir me connecter manuellement à l'aide d'un navigateur.
Il existe une liste de mesures à prendre pour résoudre ce problème.
Display Unlock Captcha
pour autoriser votre application ou votre site Web à se connecter à Gmail. Cliquez sur Continue
ou suivez les instructions.Erreur SMTP: impossible d'authentifier J'ai eu le même problème. Les étapes de dépannage suivantes m'ont aidé.
myaccount.google.com
-> Sign-in & security
-> Apps with account access
et mettre Allow less secure apps
à ON
(près du bas de la page).J'ai eu le même problème avec l'authentification. Le correctif consistait à configurer la vérification en deux étapes et à créer un mot de passe spécifique à l'application pour le périphérique (des messages d'erreur pour bloquer le périphérique apparaîtront dans les paramètres de votre compte -> "Notifications et alertes" si votre problème est identique à celui que j'ai utilisé).
Il n'y a pas de problème avec votre code.
Suivez ci-dessous deux étapes simples pour envoyer des emails à partir de phpmailer.
Vous devez désactiver le paramètre de vérification en deux étapes pour le compte Google si vous l'avez activé.
ActivezSURautorisez l'accès à une application moins sécurisée.
L'autre message est correct pour résoudre le problème mais n'indique pas comment le faire si la vérification en deux étapes est activée. L'option permettant d'autoriser les applications moins sécurisées n'est PAS disponible alors. Voici une réponse à la façon de le faire:
a. Go to the URL of `https://myaccount.google.com/` and click `Sing-in and security`
b. Click on the app password.
You will reach a page like this,
c. Create name of your app and generate a password for the respective app.
d. Use that password acquired here inside the app.
Cela devrait résoudre le problème.
C'était la question de selinux. Je viens de mettre à jour la partie donnée ci-dessous dans le fichier/etc/selinux/config SELINUX=permissive
(c'était SELINUX = en vigueur avant) . Puis redémarrez simplement le système en donnant RebootMaintenant, le courrier passe sans pas de soucis . Configuration
From Email Address : [[email protected]]
From Name : [your domain name]
SMTP Host : smtp.gmail.com
Type of Encryption : SSL
SMTP Port : 465
SMTP Authentication : YES
Username : [your mail id]
Password : [your password]