Я пытаюсь отправить электронное письмо с другим хостом, и каждый раз, когда я получаю это error-> Mailer Error: SMTP connect() failed
, Вот мой код
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 0;
$mail->Debugoutput = 'html';
$mail->Host = ' host IP ';
$mail->Port = 587;
$mail->SMTPSecure = 'ssl'; // I had also tried with TLS
$mail->SMTPAuth = true;
$mail->Username = "[email protected]";
$mail->Password = "password";
$mail->setFrom('[email protected]', 'MY Personal');
$mail->addAddress($To);
if($MoreAddresses != "")
{
foreach($MoreAddresses as $Address)
{
$mail->addAddress($Address);
}
}
$mail->Subject = $Subject;
$mail->msgHTML($Body);
$mail->AltBody = 'This email contains HTML contents.';
if($MoreAddresses != "")
{
foreach($MoreAddresses as $Address)
{
$mail->addAddress($Address);
}
}
$mail->Subject = $Subject;
$mail->msgHTML($Body);
$mail->AltBody = 'This email contains HTML contents.';
if (!$mail->send())
{
return "Mailer Error: " . $mail->ErrorInfo;
}
else
{
return "Message sent!";
}
Я пытался ответить на многие вопросы, но не смог мне помочь.
$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Username = "[email protected]";
$mail->Password = "**********";
$mail->Port = "465";
Это рабочая конфигурация.
попробуйте заменить то, что у вас есть
Этот код для php почты
$to = "".$_REQUEST['txtphp_to']."";
$subject = "Nullam id dolor id nibh ultricies vehicula.";
$txt = "Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.
Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula.";
$headers = "From: $s_emailid" . "\r\n";// .
if(mail($to,$subject,$txt,$headers))
{
echo "done";
}
else
{
echo "error";
}
Когда вы используете
$mail->Port = 587;
$mail->SMTPSecure = 'ssl';
тогда порты: tls = 587, ssl = 465.
Добавьте mail.php, используя приведенный ниже код, он работает нормально для меня …
include "../Mail/Mail.php";
$from = "test<emai>";
$to = $toname."<".$tomail.">";
$subject = $subject;
$body =$body;
$host ="ssl://smtp.gmail.com";
$port = "465";
$username = "[email protected]";
$password = "123456";
$headers['From'] =$from;
$headers['To'] = $to;
$headers['Bcc'] = $from;
$headers['Subject'] = $subject;
$headers['Reply-To'] = 'no-replay<no-replay>';
$smtp = Mail::factory('smtp',
array ('host' => $host, 'port' => $port,
'auth' => true, 'username' => $username, 'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail))
{
$mail->getMessage() ;
}