我正在尝试使用gmail的smtp发送电子邮件,但我有错误。首先,我找不到"类SMTP未找到"按照github手册安装PHPMalier,我发现我需要smtp类" class.smtp.php"。我还有错误,所以我看到我需要要求" PHPMailerAutoLoad.php"而不是" class.PHPMailer.php"。现在,我有其他人错了。我累了!我想在很久以前修复。查看正在发生的错误:
Errors to send email using smtp.gmail.com
我创建了一个类来发送电子邮件,例如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 "Could not connect to SMTP host." phpmailer Could not connect to SMTP
还有更多...但没有任何帮助我。拜托,我需要帮助!
答案 0 :(得分:0)
我发现了错误。我使用了Locaweb的例子来发送使用phpMailer的电子邮件,但我添加了SMTPSecure =&#39; tls&#39 ;;我明白了!
这篇文章对我有所帮助: "SMTP Error: Could not authenticate" in PHPMailer
这是关于Locaweb的phpMailer的帖子:(葡萄牙语) http://wiki.locaweb.com.br/pt-br/Enviar_e-mails_pelo_PHP_usando_o_PHPMailer
谢谢!