HomeBackend Geliştirme

PHP ile Email Doğrulama

PHP ile Email Doğrulama

Merhaba arkadaşlar, Bu fonksiyon aracılığıyla mail adreslerinin standart formlarda olup olmadığını kontrol edeceğiz. Eğer sunucunuzdaki PHP sürümü 5.2’den düşükse aşağıdaki fonksiyonu kullanabilirsiniz:
[sourcecode lang=”php”]<?php
function email($email){
return eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$", $email);
}
?>[/sourcecode]
Fonksiyonun kullanımı oldukça basittir. Nasıl kullanacağını gösteriyorum:
[sourcecode lang=”php”]<?php
$email="[email protected]"; // Bir email belirledik
if(email($email)==1) echo "Geçerli";
else echo "Geçersiz"; // Geçerli döndürür. Çünkü belirlediğimiz mail adresi geçerli.
?> [/sourcecode]
Eğer sunucunuzdaki PHP sürümü 5.2 ve yukarısıysa PHP grubu bizim için artık bir fonksiyon üretmiş. filter_var() fonksiyonunu FILTER_VALIDATE_EMAIL parametresiyle nasıl kullanacağımızı görelim:
[sourcecode lang=”php”]<?php
$email="[email protected]"; // Yine bir mail adresi. Gerçek
if(filter_var($email, FILTER_VALIDATE_EMAIL)) // Kullanım bu şekilde. 1 veya 0 döndürür.
echo "Geçerli";
else
echo "Geçersiz"; // Geçerli yazdırır..
?> [/sourcecode]
Ayrıca mail adreslerinizdeki zararlı karakterleri temizlemek isterseniz-ki bunun için PHP sürümünüz yine 5.2’den yüksek olmalıdır- PHP’nin ürettiği FILTER_SANITIZE_EMAIL’i deneyin:
[sourcecode lang=”php”]<?php
$email="em(ail) @adresi.com";
$email=filter_var($email, FILTER_SANITIZE_EMAIL);
echo $email; // ekran görüntüsü: [email protected]
?> [/sourcecode]
FILTER_SANITIZE_EMAIL ile [b]$-_.+!*'{}|^~[]`#%/?@&=[/b] karakterleri dışındaki bütün karakterleri temizleyebilirsiniz.

Yorumlar

TOPLAM 0
DISQUS: 0