[英]PHPMailer error to connect in gmail's SMTP
我正在尝试使用 gmail 的 smtp 发送电子邮件,但出现错误。 首先,我按照 github 手册安装了 PHPMalier,我有“找不到类 SMTP”,我发现我需要需要 smtp 类“class.smtp.php”。 我还有错误,所以我看到我需要“PHPMailerAutoLoad.php”而不是“class.PHPMailer.php”。 现在,我有其他错误。 我累了! 我很久以前就试图解决这个问题。 查看正在发生的错误:
我做了一个类来发送电子邮件,就像 git 中的例子一样:
<?php
$txtName = "Bruno";
$txtAs = "As";
$txtEmail = "Text mail";
$txtMensage = "Text Body";
$mensageBody = "<b>Name:</b> ".$txtName." <br><b>As:</b> ".$txtAs."<br><b>Message:</b> ".$txtMensage;
require 'phpmailer/PHPMailerAutoload.php';
require 'phpmailer/class.smtp.php';
function smtpmailer($to, $from, $nameDes, $as, $body) {
global $error;
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 2;
$mail->SMTPSecure = 'tls';
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->SMTPSecure = true;
$mail->Username = 'mail@gmail.com';
$mail->Password = 'pass';
$mail->SetFrom($from, $nameDes);
$mail->Subject = $as;
$mail->Body = $body;
$mail->AddAddress($to);
$mail->IsHTML(true);
if(!$mail->Send()) {
$error = "<font color='red'><b>Mail error: </b></font>".$mail->ErrorInfo;
return false;
} else {
$error = "<font color='blue'><b>Mensagem enviada com Sucesso!</b></font>";
return true;
}
}
if (smtpmailer('mail@gmail.com', 'mail@gmail.com', $txtName, $txtAs, $mensageBody)) {
Header("location: sucesso.php");
}
if (!empty($error)) echo $error;
?>
我的项目树是这样的:
我已经尝试在 gmail 帐户中找到配置,并检查这些链接: PHPMailer“无法连接到 SMTP 主机。” phpmailer 无法连接到 SMTP
还有更多……但没有任何帮助。 拜托,我需要帮助!
我发现了错误。 我使用 Locaweb 的示例使用 phpMailer 发送电子邮件,但我添加了 SMTPSecure = 'tls'; 我明白了!
这篇文章帮助了我: PHPMailer 中的“SMTP 错误:无法进行身份验证”
这是关于 Locaweb 的 phpMailer 的帖子:(葡萄牙语) http://wiki.locaweb.com.br/pt-br/Enviar_e-mails_pelo_PHP_usando_o_PHPMailer
谢谢!!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.