我被困在这里将近一个星期。我实际上按照教程中的步骤,但没有运气。我下载了这个phpmailer并获得了版本5.4.2。下面的代码是这个下载的phpmailer的一个例子,但它对我不起作用。我已经配置了 sendmail 和 php.ini。我还启用了一些扩展,例如 php openssl 和 phpsocket php smtp < / em>和 apache 模块。我希望有人能帮我解决这个问题。以下是我的代码:
<html>
<head>
<title>PHPMailer - SMTP (Gmail) basic test</title>
</head>
<body>
<?php
error_reporting(E_STRICT);
date_default_timezone_set('America/Toronto');
require_once('../class.phpmailer.php');
class.phpmailer.php if not already loaded
$mail = new PHPMailer();
$body = "dasdf";
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = "mail.yourdomain.com"; // SMTP server
$mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "gg@gmail.com"; // GMAIL username
$mail->Password = "ggg"; // GMAIL password
$mail->SetFrom('gg@gmail.com', 'jj');
$mail->AddReplyTo("gg@gmail.com","jj");
$mail->Subject = "PHPMailer Test Subject via smtp (Gmail), basic";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->MsgHTML($body);
$address = "espadadave@yahoo.com";
$mail->AddAddress($address, "Dave");
$mail->AddAttachment("images/phpmailer.gif"); // attachment
$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
?>
</body>
</html>
答案 0 :(得分:2)
那个版本的PHPMailer已经过时了(最后更新于2013年2月);它已被https://github.com/PHPMailer/PHPMailer
取代在其他任何事情之前,你应该升级到最新版本;您很可能正在尝试解决已经修复的错误。
你会发现用法几乎相同;检查GitHub页面上的示例,了解当前版本的明显差异。
您还应该通过添加
启用SMTP调试$mail->SMTPDebug = 3;