以下发件人地址在未连接的情况下调用 Mail() 失败
The following From address failed Called Mail() without being connected
大家好,我收到这个错误:
The following From address failed: username_from@gmail.com : Called Mail() without being connected
<?php
require("PHPMailer/class.phpmailer.php");
$msg = 'hello world!';
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->SMTPAuth = true;
$mail->Username = 'username@gmail.com';
$mail->Password = 'password';
$mail->SMTPSecure = 'ssl';
$mail->From = 'username_from@gmail.com';
$mail->FromName = 'My name';
$mail->AddAddress('other_user@gmail.com', '');
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = 'hello';
$mail->Body = $msg;
if(!$mail->Send()){
echo "Mailer Error: " . $mail->ErrorInfo;
}
else{
echo "Message has been sent";
}
?>
我该如何解决?谢谢!我在 PHP 中使用 Gmail 邮件服务器从本地主机 运行 XAMPP 发送电子邮件。
可能的错误原因:
您必须编辑您的 gmail 帐户权限。正在尝试启用 'Access for less secure apps' 安全设置。
可能是,您使用的是旧版本的 PHPMailer - 更新它。
不要将 ssl/465 用于 gmail;使用tls/587. 看看PHPMailer自带的gmail example code.
- 如果您只是添加一个地址,则无需调用 singleTo。
- 尝试将 Host 设置为 smtp.gmail.com
- 你可以添加$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only so you can see some debug statements?
大家好,我收到这个错误:
The following From address failed: username_from@gmail.com : Called Mail() without being connected
<?php
require("PHPMailer/class.phpmailer.php");
$msg = 'hello world!';
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->SMTPAuth = true;
$mail->Username = 'username@gmail.com';
$mail->Password = 'password';
$mail->SMTPSecure = 'ssl';
$mail->From = 'username_from@gmail.com';
$mail->FromName = 'My name';
$mail->AddAddress('other_user@gmail.com', '');
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = 'hello';
$mail->Body = $msg;
if(!$mail->Send()){
echo "Mailer Error: " . $mail->ErrorInfo;
}
else{
echo "Message has been sent";
}
?>
我该如何解决?谢谢!我在 PHP 中使用 Gmail 邮件服务器从本地主机 运行 XAMPP 发送电子邮件。
可能的错误原因:
您必须编辑您的 gmail 帐户权限。正在尝试启用 'Access for less secure apps' 安全设置。
可能是,您使用的是旧版本的 PHPMailer - 更新它。
不要将 ssl/465 用于 gmail;使用tls/587. 看看PHPMailer自带的gmail example code.
- 如果您只是添加一个地址,则无需调用 singleTo。
- 尝试将 Host 设置为 smtp.gmail.com
- 你可以添加$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only so you can see some debug statements?