繁体   English   中英

如何用PHP发送电子邮件

[英]How to send email in PHP

我遇到了与SMTP connect()失败的PHPmailer-PHP相同的问题。 我的代码如下:

public function sendEmail($toAddress, $subject, $message)
{
    require 'PHPMailer-master/PHPMailerAutoload.php';
    $mail = new PHPMailer;
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'username';
    $mail->Password = 'password';
    $mail->SMTPSecure = 'tls';
    $mail->SMTPDebug = 2;
    $mail->Port = 587;
    $mail->setFrom('support@tripmatcher.com', 'Tripmatcher Support');
    $mail->addAddress($toAddress);
    $mail->Subject = $subject;
    $mail->Body = $message;
    if (!$mail->send()) {
        error_log('Mailer Error: ' . $mail->ErrorInfo);
    } else {
        error_log('Email has been sent.');
    }
}

两个问题:

  1. 据我所见,我的代码看起来正确,并且我还为我的电子邮件地址启用了安全性较低的应用程序,这是怎么回事?
  2. [2017年9月18日星期一21:01:43.342766] [:错误] [pid 22052] [客户端2.28.76.119:55132]邮件程序错误:SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/疑难解答,引荐来源:

这就是我在日志中看到的全部内容,如何生成更具描述性的错误消息? 我曾尝试研究类似的问题,但仍然无法弄清楚到底是什么问题。

对我来说,注释掉isSMTP()行使其可以工作,但是它仍然进入我的hotmail帐户的垃圾邮件文件夹中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM