SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=285&group=50
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


Gültigkeit einer Mail prüfen


Der Mailer eines Systems kann eine Mail lediglich dann zustellen, wenn das Domain Name System (DNS) für die Zieladresse einen Mail Exchanger (MX) Resource Record (RR) oder einen Address (A) Resource Record enthält. Wenn Sie testen wollen, ob die Empfängeradresse für eine Mail gültig ist, benötigen Sie Zugriff auf das Internet und einen DNS-Server, den man befragen kann. Dann kann man die Anfrage, die der Mailer später einmal stellen wird, um die Mail zuzustellen, manuell mithilfe der Funktion checkdnsrr() nachvollziehen. Die Funktion liefert true, wenn ein passender RR vorhanden ist.

Beispiel

<?php
$email = "user@host.de";
list($user, $host) = explode("@", $email);

if (checkdnsrr($host, "MX") or checkdnsrr($host, "A")) {
  print "Mail ist anscheindend zustellbar.<BR>\n";
} else {
  print "Mail ist leider nicht zustellbar.<BR>\n";
}
?>

Hinweis: Eine DNS-Anfrage kann je nach Verfügbarkeit des DNS-Systems bis zu mehreren Minuten dauern. Der betreffende Webserverprozess ist in diesem Zeitraum blockiert. Das Vorhandensein der benötigten RRs garantiert jedoch nicht, dass der gewünschte Anwender existiert und die Mail empfangen kann.