PHPMailer,SMTP-Fehler es Konnte keine Verbindung zum smtp-host
Habe ich eine einfache Mitgliederverwaltung auf meiner Website. Es basiert auf der php-session. Wo der Benutzer einloggen kann, Passwort ändern, Anfrage für ein neues Passwort, Abmelden. Alle diese Funktionen gut funktioniert, wenn ich in meinem PC. Anfrage für ein neues Passwort funktioniert einwandfrei und die E-mail erfolgreich gesendet wurde, das neue Passwort empfangen in mail.
Wenn ich versuche, um die Anforderung für ein neues Kennwort in mobile(iPhone) (Geöffnet werden, die website über die lokale ip) bekomme ich die folgende Fehlermeldung SMTP Error es Konnte keine Verbindung zum smtp-host die E-Mail nicht gesendet, versuchen Sie es erneut!. Aber, wenn ich das gleiche in meinem PC E-mail wurde erfolgreich gesendet. Wenn ich versuche, die samsung Handy (S4) funktioniert es irgendwann, und manchmal Fehler.
mymail-Funktion erhält die Empfängeradresse, Betreff, Nachricht und von der Adresse aus ein Anruf in andere php-Datei. Nachricht enthält den Benutzernamen und das neue Passwort ein, und es ist html-code.
Ich erkläre Sie eindeutig mit dem code..
Dies ist die send_mail.php. "mymail" - Funktion aufgerufen wird von einem anderen php-Datei.
<?php
//include phpmailer
require_once ('class.phpmailer.php');
function mymail($mto, $msub, $mbody, $mfrom) {
$mail = new PHPMailer();
$mail -> IsSMTP();
$mail -> SMTPAuth = true;
$mail -> SMTPSecure = "tls";
$mail -> Host = "email-smtp.us-west-2.amazonaws.com";
$mail -> Username = "Provided by Amazon SES";
$mail -> Password = "Provided by Amazon SES";
$mail -> SetFrom("$mfrom", '');
//from (verified email address)
$mail -> Subject = "$msub";
$body = "$mbody";
$body = eregi_replace("[\]", '', $body);
$mail -> MsgHTML($body);
$mail -> AddAddress("$mto", "");
if ($mail -> Send()) {
return 1;
} else {
echo "<br> Mail not sent, try again!";
return 0;
}
}
?>
Und, ja, ich bin senden von Mails von und an die verifizierte E-Mail in der Amazon SES. Ich habe tryed, um die Bearbeitung von php-code. Entfernt den sha1-Hash-Funktion aus anderer php Datei und keine Verwendung. Ich denke, das problem ist in dieser Funktion.In der Regel php-server-Seite aber, wird der php-Prozessor arbeitet anders, wenn der Zugriff vom Handy oder pc? Ich habe versucht, von gestern Nacht. Genug getan Forschung in google. Vielen Dank im Voraus.
- Es gibt eine große Zahl von Duplikaten dieser Frage. Fast alle von Ihnen gelöst werden können, indem Sie einfach Lesen der docs, PHPMailer bietet. Sie sind auch mit einer alten version von PHPMailer. Wie @sanki sagt, muss man auch
Port = 587
. - Vielen Dank, ich habe aktualisiert, aber das Problem ist nicht das update. Hier die E-Mail eingetragen ist groß-und Kleinschreibung. In meinem Handy bei der Eingabe der E-Mail erste Buchstabe ist das Kapital. Das ist ein Problem! Fand es nur, wenn ich aktualisiert. Ich habe verfolgt das log vom Start zu Ende. Dann habe ich herausgefunden, die-und Kleinschreibung ist ein Problem. Btw Vielen Dank.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, die Aktualisierung der PHPMailer. Das sollte das Problem beheben
Versuchen Sie port-Nummer:
Zusätzlich zu, die Sie verwenden können:
Um die debugging-info.
Könnte es an fehlender SSL-Unterstützung in PHP auch. Die können aktiviert werden, indem
War ich nur der Umgang mit den gleichen sendmail php-Funktion. Einige der Dinge, die Sie zu beachten haben:
Einige Server wie Google Mail benötigen Sie zum setzen einiger Einstellungen, bevor Sie die Vertrauenswürdige Anwendungen (in diesem Fall Ihr Skript) von der Anmeldung in Ihrem Konto an. Sie sind mit amazon, aber ich glaube, Sie arbeiten auf ähnliche Sicherheits-Einstellungen.
Stellen Sie sicher, dass Sie den korrekten host und port-Nummer.
Stellen Sie sicher, Ihr Formular übergibt immer die richtigen Informationen über. Wenn ein Feld ist nicht richtig übergeben, wird E-Mail NICHT verschickt werden dennoch.
Handy, pc oder samsung sollte funktionieren auf die gleiche Weise, wie Sie haben Zugriff auf die gleichen Dateien und die browser-Unterstützung für sendmail ist wahrscheinlich das gleiche.
Ich habe es gelöst, es ist sehr einfach.
E-Mail hier und Kleinschreibung! Versucht, die änderung der Start-Brief von Kapital-zu klein. Seine Feste.Danke für alle die versucht haben zu beantworten die Frage!