PHP filter_var() Fonksiyonu | Geçerli E-posta Kontrolü

PHP filter_var() fonksiyonu, web geliştiricilerin geçerli e-posta adreslerinin kontrol edilebilmesi için kullandığı bir araçtır. Bu fonksiyon, girilen e-posta adresinin belirli bir standartta olup olmadığını kontrol ederek, hatalı adresleri tespit etmenize yardımcı olur. Bu sayede, web sitenizin güvenliği ve kullanıcı deneyimi artırılır. PHP filter_var() fonksiyonu kullanarak doğru e-posta adresi tespiti yapabilir, bu sayede SEO dostu bir web sitesine sahip olabilirsiniz.

Html Formlardan Post İşlemi

Bu makalede html formlardan post işlemi ile gelen bir e-posta adresinin, sunucu tarafında php ile e-posta kriterlerine uygun olup olmadığını, içerisine illegal karakter yazılıp yazılmadığını otomatik olarak kontrol etmenizi sağlayan filter_var() fonksiyonuna odaklanacağız.

Geçerli E-posta Kontrolü

İletişim formlarından gelen değerlerin özellikle E-Posta değerinin filtrelenmesi ve sunucuya ulaşmadan önce süzülmesi gerekiyor. Doğru mail adresleri kabul etmek ve spam işlemlerden sunucularımızı olabildiğince korumak için bu tür filtrelemeler artık standart haline gelmeye başladı.

PHP ile e-posta kontrolü yapmak için ilk yapmanız gereken işlem, html form oluşturmak olacaktır. Sadece e-posta adresi ve gönder butonu içeren bir form oluşturabilirsiniz. Kod aşağıdaki gibidir:

<!doctype html>
<html lang="tr">
<head>
  <meta charset="utf-8">
  <title>Php Filter_var() Fonksiyonu</title>
  <meta name="description" content="Php Filter_var() Fonksiyonu">
  <meta name="author" content="WebdeYazilim">
</head>
<body>
  <form action="kontrol.php" method="post">
    <label for="email">E-posta Adresiniz: </label>
    <input type="email" name="email" placeholder="E-posta Adresiniz" id="email"><br />
    <br />
    <button type="submit">Gönder</button>
  </form>
</body>
</html>

Yukarıdaki kodu index.html olarak kaydetmeniz yeterlidir. Aşağıdaki kodu kontrol.php olarak kaydedin:

<?php 
  //Post ile gelen e-posta adresini alıyoruz.
  $email = $_POST['email']; 
  
  //filter_var fonksiyonu ile geçerli olup olmadığını kontrol ediyoruz.
  if (filter_var($email, FILTER_VALIDATE_EMAIL)) { 
    //Girilen e-posta adresi geçerli ise işlemlerimizi yapıyoruz.
    echo 'Geçerli bir e-posta adresi girdiniz.'; 
  } else { 
    //Girilen e-posta adresi geçersiz ise işlemlerimizi yapıyoruz. 
    echo 'Geçersiz bir e-posta adresi girdiniz.'; 
  }
?>

Bu kod ile sadece e-posta adresinin geçerli olup olmadığını kontrol ettik, fakat bu adresi herhangi bir güvenlik kontrolünden geçirmedik. Eğer e-posta adresi illegal bir karakter içeriyorsa bunun önüne geçmeniz gerekecek. O halde aşağıdaki kodu inceleyebilirsiniz:

<?php 
  //Post ile gelen e-posta adresini alıyoruz.
  $email = $_POST['email']; 
  
  // E-posta adresini illegal karakterlerden arındırıyoruz.
  $email = filter_var($email, FILTER_SANITIZE_EMAIL); 
  
  //filter_var fonksiyonu ile geçerli olup olmadığını kontrol ediyoruz.
  if (filter_var($email, FILTER_VALIDATE_EMAIL)) { 
    //Girilen e-posta adresi geçerli ise işlemlerimizi yapıyoruz.
    echo 'Geçerli bir e-posta adresi girdiniz.'; 
  } else { 
    //Girilen e-posta adresi geçersiz ise işlemlerimizi yapıyoruz. 
    echo 'Geçersiz bir e-posta adresi girdiniz.'; 
  }
?>

FILTER_SANITIZE_EMAIL callback fonksiyonu girilen adreste ( ) \/ gibi karakterleri temizler. Diğer özel karakterleri ise farklı fonksiyonlar kullanarak temizleyebilirsiniz.

Web Geliştirme Kategorimize Göz Atmayı Unutmayın

Bu konu hakkında daha fazla bilgi almak istiyorsanız, web geliştirme kategorimize göz atabilirsiniz. Bizi takip edin ve hoşçakalın.

Yorum yapın