5.00 / 1 oy

PHP'de mail adresi doğrulaması nasıl yapılır?

Bu geceki yazılara iki adet doğrulama (validation) yazısı ekleyerek son vermek istiyorum. Formlar konusuna girmişken artık aldığımız bilgilerin doğruluklarını da nasıl test edebileceğimizi inceleyebiliriz.

Edit: bkz: PHP'de telefon numarası doğrulaması nasıl yapılır?

Kullanıcılar, her zaman bizim istediğimiz veri yapılarına uygun şekilde giriş yapmazlar. Örneğin bir e-mail adresi yerine 111 yazıp geçmek isteyebilirler ya da kendilerine spam mail göndereceğimizden endişe ederek gerçek mail adreslerini yazmak istemeyebilirler. Bu sebeple kullanıcıların yazdıkları bilgileri öncelikle test etmemiz gerekir. Her ne kadar bu test işlemi öncelikle client (tarayıcı) tarafında yapılacak olsa da ziyaretçinin javascript doğrulamalarını aşabilecekleri dikkate alınarak ikinci bir doğrulama da sunucu tarafında yapılmalıdır.

bkz: JavaScript ile mail doğrulaması (validasyon) yapmak

bkz: ASP.NET'te email doğrulaması (validasyonu) yapmak

Geçerli bir mail adresi, içerisinde boşluk da olmayacak şekilde bir isim ve devamında da (arada @ işareti olacak şekilde) bir domain olmasını gerektirir. Mail adresi doğrulaması yapabilmek için regex doğrulaması da yapabiliriz, ancak bunun yerine PHP'de doğrulama filtreleri içinde yer alan FILTER_VALIDATE_EMAIL kullanımı daha pratiktir.

Örnek 1:

<?php
    $adres = "[email protected]";
    
    if (!filter_var($adres, FILTER_VALIDATE_EMAIL))
        echo "Hatalı mail adresi";
    else
        echo "sitemize hoşgeldiniz";
?>

Sonuç: sitemize hoşgeldiniz

 

Örnek 2: 

<?php
    $adres = "sdfsdfsdf";
    
    if (!filter_var($adres, FILTER_VALIDATE_EMAIL))
        echo "Hatalı mail adresi";
    else
        echo "sitemize hoşgeldiniz";
?>

Sonuç: Hatalı mail adresi

bkz: PHP GET Metodu ile Form Kullanımı Örneği

bkz: PHP POST Metodu ile Form Kullanımı Örneği

bkz: PHP'de string'i tarihe dönüştürmek (strtotime fonksiyonu)

bkz: PHP'de declare(strict_types=1) kodu ne işe yarar?

PhpCoder

22.03.2021 05:01

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
PHP'de mail adresi doğrulaması nasıl yapılır?

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.