Email cím MX ellenőrzés

Számos szempont alapján ellenőrizhetjük a felhasználók által megadott email cím valóságát, a legegyszerűbb módszerektől a legnehezebbekig. Én most a kettő között szeretnék bemutatni egy viszonylag egyszerű megoldást. A végén adok neked egy kis feladatot is. :-)

Mit ellenőrzünk valójában?

Megnézzük, hogy a megadott domain névnek van-e valós MX rekordja ill. bejegyzése. Ehhez nem is kell annyira messze mennünk, mert a PHP tartalmaz ilyen függvényt.

A függvény

1
2
3
4
function domain_validate($email, $record = 'MX') {
    list($user, $domain) = split('@', $email);
    return checkdnsrr($domain, $record);
}

Használat

1
2
3
4
5
6
if (domain_validate('info(kukac)tutorial.hu')) {
    echo "A megadott email cím domain neve tartalmaz MX rekordot!";
}
else {
    echo "A megadott email cím domain neve NEM tartalmaz érvényes MX rekordot!";
}

Miért nem ellenőrzöm a felhasználónevet?

Nem minden szerver mondja meg, hogy az „xy” postafiók valóban létezik-e a szerveren. Ez érthető, ha belegondolunk a SPAM botoknak árulkodna a szerver, hogy milyen fiókok léteznek!

Mi a megoldás?

Ez a Te feladatod :-). A domain_validate() függvényben van egy $user változó, ami tartalmazza a felhasználónevet. Írni kell hozzá egy olyan feltételt, ami csak a megengedett karaktereket tartalmazhatja! Ehhez reguláris kifejezés használatát javaslom, íme egy példa: /^[A-Za-z][A-Za-z0-9.-_]{1,254}$/. Sok sikert!

 

HOZZÁSZÓLOK A CIKKHEZ

Kérjük, írja be véleményét!
írja be ide nevét