首页 >后端开发 >php教程 >通过 Gmail 发送电子邮件时如何修复'SMTP Connect() 失败”错误?

通过 Gmail 发送电子邮件时如何修复'SMTP Connect() 失败”错误?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-21 17:47:49967浏览

How to Fix

SMTP 连接失败:解决“SMTP Connect() 失败”错误

尝试使用 Gmail 发送电子邮件时,您可能会遇到错误消息指出“SMTP -> 错误:无法连接到服务器:连接超时 (110)nSMTP Connect() 失败。消息未发送。nMailer 错误:SMTP Connect() 失败。”此错误表示与 SMTP 服务器建立连接时出现问题。

要解决此问题,您需要修改负责发送电子邮件的 PHP 代码。具体来说,删除或注释掉以下行:

<code class="php">$mail->IsSMTP();</code>

IsSMTP() 方法已弃用,不应使用。通过删除或注释掉此行,代码将自动使用 SMTP 发送电子邮件,消除连接问题并允许成功发送电子邮件。

以下是经过修改的更新代码:

<code class="php">require 'class.phpmailer.php'; // path to the PHPMailer class
require 'class.smtp.php';

$mail = new PHPMailer();

$mail->Mailer = "smtp";
$mail->Host = "ssl://smtp.gmail.com";
$mail->Port = 587;
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "[email&#160;protected]"; // SMTP username
$mail->Password = "mypasswword"; // SMTP password 
$Mail->Priority = 1;

$mail->AddAddress("[email&#160;protected]","Name");
$mail->SetFrom($visitor_email, $name);
$mail->AddReplyTo($visitor_email,$name);

$mail->Subject  = "Message from  Contact form";
$mail->Body     = $user_message;
$mail->WordWrap = 50;  

if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}</code>

以上是通过 Gmail 发送电子邮件时如何修复'SMTP Connect() 失败”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn