Как исправить ошибку с PHPMailer, которая отображает ошибку SMTP: не удалось аутентифицироваться.Имя пользователя и пароль не принимаются? - PullRequest
0 голосов
/ 14 апреля 2019

У меня есть форма на моем веб-сайте, которая должна иметь возможность отправлять электронную почту с помощью PHPmailer через gmail.Я выбрал PHPmailer, потому что бесплатный хостинг, который я использую, не позволяет использовать функцию mail () в php.Я знаю, что этот вопрос был в течение долгого времени, но ни один из ответов, которые я читал из других подобных постов, не работал для меня.Корень проблемы в том, что я получаю сообщение об ошибке, и я не уверен, связано ли это с кодом PHP или с проблемой Gmail.Это только последняя строка ошибки SMTP Error: Could not authenticate.

Я подправил настройки из gmail, включив доступ к менее защищенному приложению в настройках Google, уже перешел по этой ссылке -> http://www.google.com/accounts/DisplayUnlockCaptcha, дважды сбросил пароль без специальных символов и обновил их в моемPHP-код.Пока ничего не получалось.

enter image description here

<?php

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

if (isset($_POST['submit'])){

require_once 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {

$mail->SMTPDebug = 2;
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Username = '@@@';  //My user name
$mail->Password = '@@@';  //My password


$mail->setFrom($_POST['email'],$_POST['name']);
$mail->addAddress('lmnlisbautista@gmail.com');
$mail->addReplyTo($_POST['email']);

$mail->isHTML(true);
$mail->Subject='Form Submission:';
$mail->Body='<h1>Name :'.$_POST['name'].'<br>Email: '.$_POST['email']. 
'<br>Message: '.$_POST['message'].'</h1>';

$mail->send();
echo 'Message has been sent!';

} catch(Exception $e){
     echo "Message could not be sent! Error: {$mail->ErrorInfo}"; 
}
}


?>
...