SMTP-Verbindungsfehler: „SMTP Connect() fehlgeschlagen. Nachricht wurde nicht gesendet.“
Der bereitgestellte PHP-Code zum Senden von E-Mails über SMTP Es tritt ein Fehler auf: „SMTP -> FEHLER: Verbindung zum Server fehlgeschlagen: Zeitüberschreitung der Verbindung (110)“.
Das Problem ergibt sich aus der Einbeziehung von $mail->IsSMTP(); und $mail->Mailer = "smtp"; Zeilen im Code. Diese Zeilen sind redundant und können bei gemeinsamer Verwendung zu widersprüchlichen Konfigurationen führen.
Lösung:
Um den Fehler zu beheben, folgen Sie der bereitgestellten Lösung und kommentieren oder entfernen Sie sie die Zeile:
<code class="php">$mail->IsSMTP();</code>
Wenn diese Zeile entfernt ist, verwendet die PHPmailer-Klasse die Einstellung $mail->Mailer, um die Methode zum Senden von E-Mails zu bestimmen, in diesem Fall SMTP.
Beispielcode:
<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>
Das obige ist der detaillierte Inhalt vonSMTP-Verbindung: Warum erhalte ich die Meldung „SMTP Connect() fehlgeschlagen. Nachricht wurde nicht gesendet.'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!