SMTP 連線錯誤:「SMTP Connect() 失敗。訊息未發送。」
提供的用於使用SMTP 發送電子郵件的電子郵件的PHP 程式碼遇到錯誤,「SMTP -> 錯誤:無法連線到伺服器:連線逾時(110)」。
問題源自於包含 $mail->IsSMTP();和 $mail->Mailer = "smtp";程式碼中的行。這些行是多餘的,一起使用時可能會導致配置衝突。
解決方案:
要解決該錯誤,請按照提供的解決方案進行註釋或刪除該行:
<code class="php">$mail->IsSMTP();</code>
刪除此行後,PHPmailer 類別使用$mail->Mailer 設定來決定發送電子郵件的方法,在本例中為SMTP。
範例程式碼:
<code class="php">// require necessary classes require 'class.phpmailer.php'; require 'class.smtp.php'; // initialize PHPMailer $mail = new PHPMailer(); // use SMTP $mail->Mailer = "smtp"; // configure SMTP settings $mail->SMTPDebug = 2; $mail->Host = "ssl://smtp.gmail.com"; $mail->Port = 587; $mail->SMTPAuth = true; $mail->Username = "[email protected]"; $mail->Password = "mypasswword"; $mail->Priority = 1; // set email details $mail->AddAddress("[email protected]", "Name"); $mail->SetFrom($visitor_email, $name); $mail->AddReplyTo($visitor_email, $name); // compose email $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>
以上是SMTP 連線:為什麼我收到「SMTP 連線()失敗。訊息未傳送。」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!