2016-10-23 5 views
1

Я уже прошел 30-минутные темы и не мог понять, какую ошибку я сделал. Может быть, кто-то, кто не я, мог видеть, что я сделал не так, что получил: сообщение не может быть отправлено.Mailer Error: SMTP connect() не удалось. Просто чтобы убедиться, что я использую новейшие файлы из github, но я не могу это сделать. Хостинг - это az.pl, может быть, кто-то должен был что-то с ним сделать? Я удалил электронные письма + пароль :)Сообщение не удалось отправить. Ошибка отправителя: SMTP connect() не удалось

<?php 
$name = $_POST['nick']; 
$visitor_email = $_POST['email']; 
$visitor_tel = $_POST['tel']; 
$message = $_POST['msg']; 
require 'PHPMailerAutoload.php'; 

require_once('class.phpmailer.php'); // dodanie klasy phpmailer 
require_once('class.smtp.php'); // dodanie klasy smtp 
$mail = new PHPMailer(); //utworzenie nowej klasy phpmailer 
$mail->isSMTP(); 
$mail->Host = "mailng.az.pl"; //adres serwera SMTP wysyłającego e-mail 
$mail->Mailer = "smtp"; //do wysłania zostanie użyty serwer SMTP 
$mail->SMTPAuth = true; //włączenie autoryzacji do serwera SMTP 
$mail->Username = ""; //nazwa użytkownika do skrzynki e-mail 
$mail->CharSet = 'UTF-8'; 
$mail->From = ""; //Pełny adres e-mail 
$mail->FromName = "Formularz kontaktowy"; //imię i nazwisko lub nazwa  użyta do wysyłania wiadomości 
$mail->Password = ""; //hasło użytkownika do skrzynki e-mail 
$mail->Port = 587; //port serwera SMTP 
$mail->Subject = "Nowe zlecenie: $visitor_email"; //Temat wiadomości, można stosować zmienne i znaczniki HTML 
$mail->Body = "Nazwa zleceniodawcy: $name \n"; 
$mail->Body .="Email kontaktowy: $visitor_email \n"; 
$mail->Body .= "Telefon kontaktowy: $visitor_tel\n"; 
    $mail->Body .= "Zlecenie: $message"; //Treść wiadomości, można stosować zmienne i znaczniki HTML 
$mail->SMTPSecure = 'tls'; // 
$mail->AddAddress ("",""); //adres skrzynki e-mail oraz nazwa 
               //adresata, do którego trafi wiadomość 
if(!$mail->send()) { 
    echo 'Message could not be sent.'; 
    echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
    header('Location: emailsent.html'); 
} 
?> 
+0

С SMTPDebug = 1 я получил: '2016-10-23 17:36:44 \t КЛИЕНТ -> SERVER: EHLO lunicdesign.pl 2016-10-23 17:36:44 \t КЛИЕНТ -> SERVER: STARTTLS 2016 -10-23 17:36:44 \t Ошибка SMTP: не удалось подключиться к узлу SMTP. 2016-10-23 17:36:44 \t КЛИЕНТ -> СЕРВЕР: QUIT 2016-10-23 17:36:44 \t Ошибка SMTP: команда QUIT: xutT ' ; i D M 6 2016-10-23 17:36:44 \t SMTP connect() failed .'' –

+0

30+ статей и удалось пропустить предложения по созданию кода на примерах и прочитать руководство по устранению неполадок связанный с сообщением об ошибке, которое вы видели. – Synchro

ответ

0

Просто ради другого, что использовать az.pl здесь изменяется скрипт, который работает (без ДУС и с комментарием $ mail-> isSMTP();)

<?php 
    $name = $_POST['nick']; 
    $visitor_email = $_POST['email']; 
    $visitor_tel = $_POST['tel']; 
    $message = $_POST['msg']; 
    require 'PHPMailerAutoload.php'; 

require_once('class.phpmailer.php'); // dodanie klasy phpmailer 
require_once('class.smtp.php'); // dodanie klasy smtp 
$mail = new PHPMailer(); //utworzenie nowej klasy phpmailer 
$mail->isSMTP(); 
$mail->Host = "mailng.az.pl"; //adres serwera SMTP wysyłającego e-mail 
$mail->Mailer = "smtp"; //do wysłania zostanie użyty serwer SMTP 
$mail->SMTPAuth = true; //włączenie autoryzacji do serwera SMTP 
$mail->Username = ""; //nazwa użytkownika do skrzynki e-mail 
$mail->CharSet = 'UTF-8'; 
$mail->From = ""; //Pełny adres e-mail 
$mail->FromName = "Formularz kontaktowy"; //imię i nazwisko lub nazwa użyta do wysyłania wiadomości 
$mail->Password = ""; //hasło użytkownika do skrzynki e-mail 
$mail->Port = 587; //port serwera SMTP 
$mail->Subject = "Nowe zlecenie: $visitor_email"; //Temat wiadomości, można stosować zmienne i znaczniki HTML 
$mail->Body = "Nazwa zleceniodawcy: $name \n"; 
$mail->Body .="Email kontaktowy: $visitor_email \n"; 
$mail->Body .= "Telefon kontaktowy: $visitor_tel\n"; 
    $mail->Body .= "Zlecenie: $message"; //Treść wiadomości, można stosować zmienne i znaczniki HTML 
$mail->SMTPSecure = ''; // 
$mail->SMTPAutoTLS = false; //wyłączenie TLS 
$mail->AddAddress ("",""); //adres skrzynki e-mail oraz nazwa 
               //adresata, do którego trafi wiadomość 
if(!$mail->send()) { 
    echo 'Message could not be sent.'; 
    echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
    header('Location: emailsent.html'); 
} 
?> 
+0

Это было предложено в других местах. Это «исправляет» SMTP, не используя SMTP. Важно понимать, почему работает код, а не только то, что он делает. – Synchro

+0

Спасибо Synchro, но я никогда не видел пустого smtpsecure где угодно (где бы я ни смотрелся), и случайно я оставил его таким образом между переключением между tls и ssl: P Хорошо, что он работает :) Я не глава PHP и никогда не работал это больше, чем я должен, но после этого урока - мне нужно :) –

+1

Пустая строка в SMTPSecure не определена. Если вы хотите отключить шифрование, установите «SMTPSecure = false» и «SMTPAutoTLs = false». Но если вы используете ISP, который требует аутентификации по незашифрованному соединению, пришло время найти нового интернет-провайдера. – Synchro

 Смежные вопросы

  • Нет связанных вопросов^_^