Fehlerbehebung beim Senden von E-Mails an Spam in PHP mit der Mail-Funktion
Beim Versenden von E-Mails über die Funktion mail() von PHP landen diese häufig im Spam Ordner. Um dieses Problem zu lösen, müssen wir das zugrunde liegende Problem verstehen.
Der Schlüssel zur Lösung dieses Problems liegt in der Tatsache, dass die Funktion mail() keinen gut konfigurierten SMTP-Server verwendet. Zum Beispiel:
$ticketDetail is an array containing pertinent information for transmission. sendOwnershipEmail('[email protected]', $ticketDetail); function sendOwnershipEmail($email, $ticketDetail) { $param = new stdClass(); $param->content = "<div> <div><b>".$ticketDetail[0]['ticket_number']."</b></div><br/> <div><img src='".$ticketDetail[0]['image_path']."'/></div><br/> <div>Ticket with ticket number ".$ticketDetail[0]['ticket_number']." has been requested for tranfer from <div/> <div>".$ticketDetail[0]['oldDepartment']." to ".$ticketDetail[0]['newDepartment']." Department <div/> </div>"; $param->sendTo = $email; $param->subject = "Request for Department transfer"; sendMailFunction($param); } function sendMailFunction($param) { $to = $param->sendTo; $subject = $param->subject; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From: [email protected]' . "\r\n"; $message = "<html><head>" . "<meta http-equiv='Content-Language' content='en-us'>" . "<meta http-equiv='Content-Type' content='text/html; charset=windows-1252'>" . "</head><body>" .$param->content. "<br><br></body></html>"; mail($to, $subject, $message, $headers); }
Lösung
SMTP-Server: Die mail()-Funktion von PHP verlässt sich zum Senden von E-Mails auf einen Server, der möglicherweise nicht richtig konfiguriert ist. Durch die Verwendung von PHPMailer und die Konfiguration für die Verwendung der SMTP-Authentifizierung in Verbindung mit einem dedizierten SMTP-Server wird dieses Problem behoben.
PHPMailer-Bibliothek: Die PHPMailer-Bibliothek ist eine Open-Source-PHP-Bibliothek, die speziell für den E-Mail-Versand entwickelt wurde. Es bietet verschiedene Funktionen, einschließlich der Handhabung der SMTP-Authentifizierung. Durch die Integration von PHPMailer in Ihren Code können Sie einen dedizierten SMTP-Server konfigurieren, der das Problem löst.
Das obige ist der detaillierte Inhalt vonWarum landen die E-Mails meiner PHP-Funktion „mail()' im Spam-Ordner?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!