如何在xampp上使用phpmailer发送邮件

时间:2017-09-15 09:58:32

标签: php xampp smtp phpmailer sendmail

我一直试图在xampp上使用php邮件发送邮件,我确实收到此错误说 无法发送消息。邮件程序错误:以下发件人地址失败:xxxx2@gmail.com:未连接称为Mail()

拜托,我需要帮助解决这个问题。 这是我的代码;

<?php
require( 'class.phpmailer.php' );

  $mail = new PHPMailer;
  $mail->IsSMTP();
  $mail->SMTPAuth = true;
  $mail->Host = "tls://smtp.gmail.com";
  $mail->Port = 25;
  $mail->Username = "xxxx@gmail.com";
  $mail->Password = "xxxxx";
  //Sending the actual email
  $mail->setFrom('xxxx2@gmail.com', 'Aaron');
  $mail->addAddress('xxxx2@gmail.com', 'Aaron');     // Add a recipient
  $mail->isHTML(false);                                  // Set email format to HTML
  $mail->Subject = 'Calculation form results from ';
  $mail->Body = 'testing...';

  if(!$mail->send()) {
    echo 'Message could not be sent. ';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
    exit;
  }
?>

2 个答案:

答案 0 :(得分:3)

https://github.com/PHPMailer/PHPMailer/blob/master/examples/gmail.phps

逐字复制
//Create a new PHPMailer instance
$mail = new PHPMailer;

//Tell PHPMailer to use SMTP
$mail->isSMTP();

//Set the hostname of the mail server
$mail->Host = 'smtp.gmail.com';
// use
// $mail->Host = gethostbyname('smtp.gmail.com');
// if your network does not support SMTP over IPv6

//Set the SMTP port number - 587 for authenticated TLS
$mail->Port = 587;

//Set the encryption system to use - ssl (deprecated) or tls
$mail->SMTPSecure = 'tls';

//Whether to use SMTP authentication
$mail->SMTPAuth = true;

//Username to use for SMTP authentication - use full email address for gmail
$mail->Username = "username@gmail.com";

//Password to use for SMTP authentication
$mail->Password = "yourpassword";

//Set who the message is to be sent from
$mail->setFrom('from@example.com', 'First Last');

//Set an alternative reply-to address
$mail->addReplyTo('replyto@example.com', 'First Last');

//Set who the message is to be sent to
$mail->addAddress('whoto@example.com', 'John Doe');

答案 1 :(得分:0)

我尝试使用Composer和github,但无法获得最新版本的phpmailer来通过xampp处理我的测试php电子邮件。当我在localhost上运行该程序时,由于电子邮件代码正在查找php mailer类,因此该程序不断崩溃。 因此,我回到Google,忽略了作曲家,下载了一个普通的php mailer 5.2.0 zip压缩文件,并将该压缩文件直接解压缩到我的“ websiteX”测试文件夹中,该文件夹位于xampp的htdocs中。

在我的“ websiteX”文件夹中,我有我的testmail.php文件以及phpmailer解压缩的文件夹,其中包含class.phpmailer,在我的情况下实际上可以使用。

我已经花了一周的时间,但是现在我有xampp php电子邮件可以完美地发送到我的测试gmail帐户。我也使用chrome和notepad ++。

很有趣的是,尽管Gmail硬弹了'em,但我的php mail()命令也可以发送php电子邮件,但这并不好。上周我做的第一件事是使Mercury邮件(包含在xampp中)正常工作。我遵循了此链接https://www.open-emr.org/wiki/index.php/Mercury_Mail_Configuration_in_Windows,并设法使xampp与gmail通信非常棒!

祝您编码顺利。