dongqiang8474 2016-09-12 07:31
浏览 135
已采纳

PHPMailer邮件错误 - > SMTP连接()

I don't know why I get this error PHPMailer Mail Error - >SMTP connect(). How can I solve it? I don't have any idea how can I do I need exactly explications, I'm new with PHP

<?php
    require '../plugins/phpmailer/PHPMailerAutoload.php';
    $mail = new PHPMailer();
    $mail->CharSet = "utf-8";
    $mail->IsSMTP();
    $mail->SMTPDebug = 1;
    $mail->SMTPAuth = true;
    $mail->Username = "myemail@gmail.com";
    $mail->Password = "mypass";
    $mail->SMTPSecure = "ssl";
    $mail->Host = "smtp.gmail.com";
    $mail->Port = "587";

    $mail->setFrom('your_gmail@gmail.com', 'your name');
    $mail->AddAddress('to_mail@mail.com', 'receivers name');

    $mail->Subject = 'using PHPMailer';
    $mail->IsHTML(true);
    $mail->Body = 'Hi there ,
                            <br />
                            this mail was sent using PHPMailer...
                            <br />
                            cheers... :)';

    if ($mail->Send()) {
        echo "Message was Successfully Send :)";
    } else {
        echo "Mail Error - >" . $mail->ErrorInfo;
    }
    ?>
  • 写回答

2条回答 默认 最新

  • dsdtszi0520538 2016-09-12 08:13
    关注

    Error due to SMTP connection failed.So, Check your configuration first, you can check by comment the line $mail->IsSMTP();

    // $mail->IsSMTP();
    

    See below is working demo :

      <?php
       require 'phpmailer.php';
       require 'smtp.php';
       $mail = new PHPMailer;
      //$mail->IsSMTP(); // telling the class to use SMTP
       $mail->Host       = "smtp.gmail.com"; // SMTP server
       $mail->SMTPDebug  = 1;                     // enables SMTP debug information (for testing)
                                           // 1 = errors and messages
                                           // 2 = messages only
       $mail->SMTPAuth   = true;                  // enable SMTP authentication
       $mail->Host       = "smtp.gmail.com"; // sets the SMTP server
       $mail->Port       = 465;                    // set the SMTP port for the GMAIL server
       $mail->Username   = GMAIL EMAIL ID; // SMTP account username
       $mail->Password   = GMAIL PASSWORD;        // SMTP account password
       $mail->SMTPSecure = 'ssl';
    
    
       $mail->From = 'from@example.com';
       $mail->FromName = 'Mailer';
       $mail->addAddress('MAIL ID to whom you eant to send');               // Name is optional
    
      $mail->addCC('CC EMAIL ID');
      $mail->addBCC('BCC EMAIL ID');
      $mail->WordWrap = 50;                                 // Set word wrap to    50 characters
    
      $mail->Subject = 'Here is the subject';
      $mail->Body    = 'MESSAGE';
      $mail->AltBody = 'This is the body in plain text for non-HTML mail  clients';
    
      if(!$mail->send()) {
      echo 'Message could not be sent.';
      echo 'Mailer Error: ' . $mail->ErrorInfo;
      } else {
      echo 'Message has been sent';
     }
        ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了