CityHost.UA
Hilfe und Unterstützung

Wie man den Versand von E-Mails mit PHP und SMTP überprüft

Für eine objektive Überprüfung des Versands von E-Mails von der Website kann ein Test-PHP-Skript und ein E-Mail-Dienst verwendet werden, der nicht empfindlich auf E-Mails reagiert, die als Spam erkannt werden können.

 

1. Gehen Sie zu [Dateimanager] der gewünschten Website und erstellen Sie im Stammverzeichnis eine Datei mit dem Namen mail.php

 

2. Öffnen Sie die erstellte Datei und fügen Sie den folgenden PHP-Code zum Versenden von E-Mails ein – PHP oder SMTP, je nachdem, welche Versandmethode überprüft werden soll.

 

3. Erhalten Sie ein temporäres Postfach zur Überprüfung der E-Mail-Zustellung, indem Sie einen beliebigen E-Mail-Dienst verwenden, wir empfehlen temp-mail.org. Beim Öffnen der Website wird sofort eine temporäre E-Mail generiert, verwenden Sie diese E-Mail im nächsten Schritt für das Feld an senden.

 

4. Bearbeiten Sie im Code der Datei die Felder von und an, um die Test-E-Mail gemäß der Anleitung zu senden, und speichern Sie die Änderungen in der Datei.

 

5. Greifen Sie über den Browser auf die Datei zu — ihre-seite.com.ua/mail.php

 

6. Auf der Seite wird sofort das Ergebnis der Skriptausführung angezeigt: grüner Text weist auf einen erfolgreichen Versand hin, roter Text auf einen Fehler. Im Falle eines erfolgreichen Versands sehen Sie die E-Mail auf der Seite des temporären E-Mail-Dienstes aus Punkt 3. Bei einem Fehler überprüfen Sie, ob die Felder im Skript korrekt ausgefüllt sind.

 

Überprüfung der Zustellung mit der PHP MAIL-Methode

 

FROM@EXAMPLE.COM — geben Sie die E-Mail-Adresse an, unbedingt in der Domain der Website

TO@EXAMPLE.COM — geben Sie die E-Mail-Adresse an, an die die E-Mail gesendet werden soll (temporäre E-Mail aus Punkt 3)

<?php
$from =     "FROM@EXAMPLE.COM";
$to =       "TO@EXAMPLE.COM";
$subject="PHP-Mail von der Website ".$_SERVER["SERVER_NAME"];$message="PHP-Version auf der Website ".phpversion();$headers="Von: ".$from."\r\n";$headers.="Content-Type: text/plain; charset=utf-8\r\n";if(mail($to,$subject,$message,$headers)){echo"<h1 style='color:green'>E-Mail erfolgreich gesendet an ".$to." um ".date("H:i:s")." von der Website ".$_SERVER["SERVER_NAME"];}else{echo"<h1 style='color:red'>Fehler! E-Mail wurde nicht gesendet";}

 

Überprüfung der Zustellung mit der SMTP-Methode

 

FROM@EXAMPLE.COM — geben Sie das Postfach an, das auf dem Hosting erstellt wurde [im Abschnitt E-Mail]

PASSWORD — geben Sie das Passwort für das erstellte Postfach an

TO@EXAMPLE.COM — geben Sie die E-Mail-Adresse an, an die die E-Mail gesendet werden soll (temporäre E-Mail aus Punkt 3)

<?php
$user =     'FROM@EXAMPLE.COM';
$pass =     'PASSWORD';
$host =     'ssl://MX1.CITYHOST.COM.UA';
$port =     465;
$to =       'TO@EXAMPLE.COM';
$template="Betreff: SMTP-Mail von der Website ".$_SERVER['SERVER_NAME']."\r\n"."An: $to\r\n"."Von: $user\r\n"."Content-Type: text/plain; charset=utf-8\r\n"."Content-Transfer-Encoding: 7bit\r\n"."E-Mail von SMTP-Benutzer $user\r\n.";if(smtp_mail($to,$template,$user,$pass,$host,$port)){echo"<h1 style='color:green'>E-Mail erfolgreich gesendet an ".$to." um ".date("H:i:s")." von der Website ".$_SERVER["SERVER_NAME"];}else{echo"<h1 style='color:red'>Fehler! E-Mail wurde nicht gesendet";}function smtp_mail($to,$template,$user,$pass,$host,$port){if($h=fsockopen($host,$port)){$data=array(0,"EHLO $host",'AUTH LOGIN',base64_encode($user),base64_encode($pass),"MAIL FROM: <$user>","RCPT TO: <$to>",'DATA',$template);foreach($data as $c){$c&&fwrite($h,"$c\r\n");while(substr(fgets($h,256),3,1)!=' '){}}fwrite($h,"QUIT\r\n");return fclose($h);}}

Ähnliche Artikel