PHPMailer использовать Gmail как SMTP-сервер. Не удалось подключиться к узлу SMTP. Ошибка Mailer: ошибка SMTP: не удалось подключиться к SMTP-хосту

Я пытаюсь использовать phpMailer для отправки подтверждающих сообщений пользователям по электронной почте. мой код:

<?php include("class.phpmailer.php"); include("class.smtp.php"); $mail = new PHPMailer(); $mail->IsSMTP(); // set mailer to use SMTP $mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server $mail->Port = 465; // set the port to use $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = "sender@gmail.com"; // your SMTP username or your gmail username $mail->Password = "mypasswrord"; // your SMTP password or your gmail password $from = "webmaster@example.com"; // Reply to this email $to="receiver@yahoo.com"; // Recipients email ID $name="Jersey Name"; // Recipient's name $mail->From = $from; $mail->FromName = "Webmaster"; // Name to indicate where the email came from when the recepient received $mail->AddAddress($to,$name); $mail->AddReplyTo($from,"Webmaster"); $mail->WordWrap = 50; // set word wrap $mail->IsHTML(true); // send as HTML $mail->Subject = "Sending Email From Php Using Gmail"; $mail->Body = "This Email Send through phpmailer, This is the HTML BODY "; //HTML Body $mail->AltBody = "This is the body when user views in plain text format"; //Text Body if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message has been sent"; } ?> 

Я уже включил ssl в php.ini.

PS> sender@gmail.com – это электронная почта маски для защиты конфиденциальности. но я действительно установил настоящий адрес электронной почты в этой части

в php.ini убедитесь, что вы раскоментировали строку с помощью

 extension=php_openssl.dll 

Просто включите extension=php_openssl.dll

и следуйте этим инструкциям, приведенным по этой ссылке

Я тестировал, он работает на 100%.

На этой странице есть код, который автор утверждает, «работал безупречно».

Единственное реальное различие, которое я вижу между его и вашим, заключается в том, что у него есть:

 $mail->Mailer = "smtp"; 

Наверное, я бы начал с его кода, чтобы увидеть, работает ли он, а затем отлаживается оттуда.

неправильно:

 $mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server 

хорошо:

 $mail->Host = "smtp.gmail.com"; // specify main and backup server 

Отсюда

2) Прокомментируйте следующие строки кода в class.phpmailer.php

 /* if(strstr($hosts[$index], ":")) list($host, $port) = explode(":", $hosts[$index]); else */ 

Попробуйте это, если вы еще этого не сделали.