kişisel düşünceler, üstüne bir de teknoloji..

Php E-Posta Adresi Doğrulama

Kodladığımız projelerde sık sık girilen e-posta adreslerinin doğru olup olmadığını kontrol etmemiz gerekir. Bunun için farklı yollar izleyebiliriz. Daha önce Javascript İle E-Posta Adresi Doğrulama başlıklı yazımda yöntemlerden birine değinmiştim. Fakat bu tür yöntemler biraz çabayla atlatılabiliyor.

Çoğu kişinin e-posta doğrulama için kullandığı yöntem Regular Expressions adıyla bilinen düzenli ifadelerdir. Fakat düzenli ifadeler ile oluşturulmuş bir kontrol fonksiyonunu [email protected] gibi bir e-posta adresiyle rahatça aşabilirsiniz. İşte bunu önlemek için bize verilen e-posta adresine ait bir mx kaydı olup olmadığını kontrol edeceğiz. Domaine ait bir mx kaydı yoksa fonksiyonumuz bize geçerli değil gibi bir uyarı döndürecektir.

Php E-Posta Adresi Doğrulama (Mx Kaydı Kontrol Ederek) Fonksiyonu

$email='[email protected]';

$sunucu= substr($email,strpos($email,'@')+1);

$sonuc= array();
getmxrr($sunucu,$sonuc);

if(count($sonuc)>0){
 echo 'adres gecerli';
}else {
 echo 'adres gecersiz';
}

Yukarıda paylaştığım fonksiyona Ersin Doğan’ın buradaki yazısından ulaştım ve paylaşmak istedim.

2 Comments

  1. Can

    Ahmet bey kişisel domainleri sistem kabul ediyor mu ? yani ahmetiscan.web.tr adresiyle üye olmak isteyen kişi üye olabiliecek mi? Ayrıca [email protected] gibi [email protected] gibi adresler ne olacak? kabul edilecek mi edilmeyecek mi?

    • Ahmet İşcan

      Evet kişisel domainleri de kapsamaktadır. E-posta adresinin alan adının mx kaydına göre geçerlilik testi yapmaktadır. Diğer türlü e-posta adresini birebir doğrulamak e-posta göndermeden çok da mümkün değil. Mümkünse de ben yolunu bilmiyorum açıkçası.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir