PHP邮件程序SMTP connect()失败。 (2018年3月1日)

时间:2018-01-02 17:52:10

标签: php smtp gmail phpmailer

当我尝试使用PHPMailer代码时遇到了一些问题。 此代码仍然适用于2017年10月,但自2017年12月至今不起作用。 我试图找到其他类似的问题,但时间似乎太奇怪,或者它没有帮助。 自从我完成以来,我没有更改任何代码。 但是时间过去后出现错误。 我收到了这个错误:

SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

当我试图在麻烦上找到它时,它说它可能是由localhost引起的。 这是我的代码:

function mailsend($email,$accepter,$title,$content){
  include_once("../lib/PHPMailer/PHPMailerAutoload.php");   
  $mail = new PHPMailer();                        

  $mail->IsSMTP();                                
  $mail->SMTPAuth = true;                         

  $mail->SMTPSecure = "ssl";                      
  $mail->Host = "smtp.gmail.com";                 
  $mail->Port = 465;                              
  $mail->CharSet = "utf-8";                       
  $mail->Encoding = "base64";
  $mail->WordWrap = 50;                           



  $mail->Username = "myaccount@gmail.com";     
  $mail->Password = "mygmail_account_password";              

  $mail->From = "sender@gmail.com";         
  $mail->FromName = "sender_name";                 

  $mail->Subject = $title; 

  $mail->IsHTML(true);    


  $mailList =       
      array(
          array($email,$accepter)            
      );

  foreach ($mailList as $receiver) {
      $mail->AddAddress($receiver[0], $receiver[1]);  

      $mail->Body = $content;
      if($mail->Send()) {                             
        // echo"<script>alert('success_sended');</script>";
      } else {
        echo $mail->ErrorInfo;
        echo "<br>";
      }
      $mail->ClearAddresses();
  }
}

如果我想更改一些代码以使其再次运行 我在哪里可以开始? 干杯看看。

1 个答案:

答案 0 :(得分:1)

我有相同的错误但是使用Yandex,请尝试添加以下内容:

$ mail-&gt; SMTPKeepAlive = true;
$ mail-&gt; Mailer =“smtp”; //不要改变引号!

在此处查看更多https://stackoverflow.com/a/48010266