PhpMailer не может отправить через postfix - PullRequest
0 голосов
/ 19 января 2019

Это мой код.Я хотел бы знать, почему электронное письмо не отправляется.

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

require 'vendor/phpmailer/phpmailer/src/Exception.php';
require 'vendor/phpmailer/phpmailer/src/PHPMailer.php';
require 'vendor/phpmailer/phpmailer/src/SMTP.php';


$messaggio = new PHPmailer();
$messaggio->isSMTP();

//settiamo su true il metodo che indica alla classe 
//il formato HTML
$messaggio->IsHTML(true);
$messaggio->Charset = 'UTF-8';
$messaggio->Host='mail.example.com'; 
$messaggio->SMTPSecure = '';
$messaggio->SMTPAuth = true;
$messaggio->Username = 'webmaster@example.com';
$messaggio->Password = 'AM19720306*';
$messaggio->Port = 25;
//intestazioni e corpo dell'email
$messaggio->From='webmaster@example.com';
$messaggio->FromName = "Webmaster";
$messaggio->AddAddress('amaranga72@hotmail.com');
$messaggio->AddReplyTo('webmaster@example.it'); 
$messaggio->Subject='Benvenuto Nel Nostro Sito';

//inseriamo i tag HTML e i CSS per formattare il messaggio
$messaggio->Body = '<html><body><head><style>';
$messaggio->Body .= '.up{background-color:#FF0000;color:#000000;font-         size:12px;font-weight:bold}';
$messaggio->Body .= '.down{color:#FF0000;text-align:left;font-size:12px}';   
$messaggio->Body .= '</style></head>';
$messaggio->Body .= '<img '
    . 'src="/http://localhost/home/albertyno/NetBeansProjects/PhpMail/TecnoLogo2Rid.gif.jpg" alt="logo TS"/>';
$messaggio->Body .= '<center><table><tr><td class="up">Buongiorno Utente</td></tr>';
$messaggio->Body .= '<tr><td class="down">ciao!!!</td></tr></table></center>';
$messaggio->Body .= '<table><tr><td style="font-weight:bold">Alberto Marangoni</td></tr>';
$messaggio->Body .= '<tr><td>Via Manzoni, 9</td></tr>';
$messaggio->Body .= '<tr><td>20080 Vermezzo (MI)</td></tr>';
$messaggio->Body .= '<tr><td>Tel.: 0248403353</td></tr>';
$messaggio->Body .= '<tr><td>Fax : 0248400342</td></tr>';
$messaggio->Body .= '<tr><td>Cell: 327.......</td></tr>';
$messaggio->Body .= '<tr><td>Email: alberto-marangoni@tecno02.com</td></tr>';
$messaggio->Body .= '</body></html>';


//parte relativa all'invio
if(!$messaggio->Send()){ 

   echo $messaggio->ErrorInfo; 
}else{ 
   echo 'Email inviata correttamente!';
}

Я использую postfix и phpmailer.

Что я делаю не так?

Ответы [ 2 ]

0 голосов
/ 20 января 2019

SMTP выдает мне ошибку:

2019-01-20 07:25:57 Connection: opening to mail.example.com:25, timeout=300, options=array()
2019-01-20 07:25:57 Connection failed. Error #2: stream_socket_client(): php_network_getaddresses: getaddrinfo failed: Name or service not known [/home/albertyno/NetBeansProjects/PhpMail/vendor/phpmailer/phpmailer/src/SMTP.php line 326] 
2019-01-20 07:25:57 Connection failed. Error #2: stream_socket_client(): unable to connect to mail.example.com:25 (php_network_getaddresses: getaddrinfo failed: Name or service not known) [/home/albertyno/NetBeansProjects/PhpMail/vendor/phpmailer/phpmailer/src/SMTP.php line 326] 
2019-01-20 07:25:57 SMTP ERROR: Failed to connect to server: php_network_getaddresses: getaddrinfo failed: Name or service not known (0) 
2019-01-20 07:25:57 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting. 

Можете ли вы ее решить или нет?

0 голосов
/ 19 января 2019

Я думаю, что это не работает, потому что вы не установили реальную электронную почту, я вижу From='webmaster@example.com'; в вашем коде.Поэтому я предлагаю вам сначала изменить это на электронную почту вашего домена и настроить все параметры в коде.Мы не можем отправить вам решенный код, потому что мы не знаем ваш домен, адрес электронной почты и т. Д. Надеюсь, это поможет :) Спасибо, Оливер

...