@dmd7
it направление

Почему не отправляются письма с помощью PHPMailer?

Мой код:
<?php 

$phone = $_POST['user'];

require_once('phpmailer/PHPMailerAutoload.php');
$mail = new PHPMailer;
$mail->CharSet = 'utf-8';

//$mail->SMTPDebug = 3;                               // Enable verbose debug output

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.gmail.com';  // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'xxxxx@gmail.com';                 // Наш логин
$mail->Password = 'xxxxxxx';                           // Наш пароль от ящика
$mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465;                                    // TCP port to connect to
 
$mail->setFrom('xxxxx@gmail.com', 'Иван Иванов');   // От кого письмо 
$mail->addAddress('xxxxx@mail.ru');     // Add a recipient
$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Новая заявка сайта';
$mail->Body    = '
	Пользователь оставил свои данные <br> 
	Имя: неизвестно <br>
	Телефон: ' . $phone . '';
$mail->AltBody = 'Это альтернативный текст';

if(!$mail->send()) {
	echo 'Письмо не может быть отправлено. ';
	echo 'Ошибка: ' . $mail->ErrorInfo;
} else {
	header('location: ../thankyou.html');
}                            
?>

Вот HTML
<form action="mailer/smart.php" method="POST" class="main-form_post">
<input type="tel" class="popup-form__input" id="phone" name="user" required placeholder="+7 (ХХХ) ХХХ-ХХ-ХХ">

Заливаю на хостинг.
У меня выдает ошибку Письмо не может быть отправлено. Ошибка: SMTP connect() failed.
  • Вопрос задан
  • 1633 просмотра
Пригласить эксперта
Ответы на вопрос 2
butteff
@butteff
Раз в тысячу лет заправляю свитер в носки
>SMTP connect() failed
1. Все ли данные верны? Может порт 587?
2. Все ли php библиотеки для работы с smtp установлены?
3. Есть ли на сервере какой фаервол (iptables\ufw)? Если это амазоновский сервер, то разрешено ли подключение на smtp порт в security groups?
Ответ написан
@alekssamos
Программист любитель
Заблокирована попытка входа в аккаунт: ненадежное приложение
Кто-то хотел войти в ваш аккаунт через ненадежное приложение. Мы заблокировали эту попытку.


Решение: Заходим вот сюда https://myaccount.google.com/security?hl=ru&pli=1
и включаем:
Ненадежные приложения разрешены
Некоторые сторонние приложения используют технологии входа, которые могут ослабить защиту вашего аккаунта. Мы рекомендуем отключить доступ для таких приложений. Если вы все же хотите работать с ними, включите эту настройку.


Вот и всё. Сохраняем и всё должно отправлять.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы