PHP de Filtreler

PHP de Filtreler

Hepinize merhaba dostlarım :). Bu yazımda php de projelerde neredeyse vazgeçilmez olan, güvenlik açısından önnemli olan filtreleme işlemlerinden bahsedeceğim. İlk defa duyanlar olabilir aramızda veya bu güvenlik için kendiniz fonksiyon yazmış olabilirsiniz dostlarım :). Heyecan yok sakinlleşin öncelikle anlatcam :). Gelin beraber filtreleme nedir ne niçin kullanılır ondan bahsedelim

Filtreleme Nedir ve Niçin Kullanılır ?

Dostlarım filtreleme biliyorsunuz adı üstünde bir şarta göre işlem yapıyor. Aynı gerçek hayataki gibi hava filtresi gibi :). Yalnız kodlamada öyle değil dostlarım. Bizim belirttiğimiz kısımlarda filtreleme yapıyor. Aynı if else gibi ama bu biraz daha onun gelişmiş yapısı diyebiliriz :). Filtrelemenin ne olduğuna değindik şimdi ise gelelim neden kullanıldığına bakalım

Dostlarım filtrelemenin nerelerde kullanılacağına örnek olarak bir üyelik paneli yazdınız diyelim dostlarım. Kötü amaçlı kullanıcıların buraya hatalı E-Mail yazmasına karşı koymuş olabileceksiniz, veya sisteminizde olası saldırılara karşı bir ip adresi tablosu var diyelim (veritabanında tabii ki :)). Gelen ip adreslerini geçersiz olarak yakalayıp veri tabanına aktarabileceksiniz dostlarım :). İşte bu ve bunun gibi yapılara filtreleme adını veriyoruz dostlarım :) 

PHP de Filtreler

Dostlarım php programlama dilinde dostlarım birden fazla filtreleme komutu vardır :). Bu yazımızda ise birkaçına değineceğiz :). Siz yine sabırsızlandınız acaba hangileri var diye merak ediyorsanız dostlarım bir php dosyası oluşturun ve aşağıdaki verdiğim kodu yazın :)

<?php
     // filter_list()   ile bütün filtreleme komutlarını çektik
     foreach (filter_list() as $filtreler) {
      echo $filtreler."<br>";
    }
?>

şeklinde kodu yazdığınızda birden fazla filtreleme komutu karşımıza çıkacaktır. Bu filtrelerin kullanımı için işimize yarayacak kod parçası filter_var() şeklindedir. 2 parametre alır

  1. Filtreleme yapılacak değişken
  2. Ne tür bir filtreleme yapılacak

şeklindedir dostlarım. Artık sabırsızlandığınızın farkındayım :). Sözü uzatmadan hemen örneklerimize geçelim :)

PHP Filtreleme ile Geçerli E-Mail Kontrolü

Dostlarım yazımın en başında da değinmiştim. Sisteme kötü amaçlı kişilerin saldırmasına karşın email geçerliliği kontrolünü filter aracılığıyla rahat bir biçimde yazabiliriz. Gelin bu işlemin nasıl yapıldığına bakalım

<?php
$email = "info@mfsoftware.net"; // E-MAİL ADRESİMİZİ YAZDIK
$validate_email = filter_var($email,FILTER_SANITIZE_EMAIL); // EMAİL İÇİNDE İLLEGAL KARAKTERLERİ SİLDİK
if (filter_var($validate_email,FILTER_VALIDATE_EMAIL)){
    echo "E-Mail Adresi Geçerli";
}else{
    echo "E-Mail Adresi Geçersiz";
}

// Ekran Çıktısı: E-Mail Adresi Geçerli
?>

şeklinde kodumuzu yazdık dostlarım. Burada süreç nasıl işledi gelin önce ona bakalım

  1. İlk önce E-Mail adresimizi yazdık
  2. Daha sonra email adresimizdeki illegal karakterleri (?*/<> vs gibi) temizlememiz için filter_var($email,FILTER_SANITIZE_EMAIL) kodunu yazdık. Buradan email adresimiz temizlenmiş olarak $validate_email isimli değişkenimize geldi
  3. E-Mail adresimizdeki illegal karakterleri sildikten sonra $validate_email değişkenini alıp filter_var($validate_email,FILTER_VALIDATE_EMAIL) kodu içerisine yazdık. Yani amacımız email adresimiz geçerli bir e-mail adresi mi değil mi kontrol ettiriyoruz
  4. 3. adımdaki işlemin sonucu true ise yani email adresimiz geçerli ise E-Mail Adresi Geçerli, değil ise E-Mail Adresi Geçersiz yazacaktır

ve bizim de örneğimizde belirttiğimiz info@mfsoftware.net geçerli bir e-mail olduğu için doğrulamadan rahat bir şekilde geçti dostlarım :). E-Mail geçerlilik kontrolüü bu kadar dostlarım :). Şimdi gelelim diğer bir örneğe

PHP Filtreleme ile URL Geçerliliği

Evet dostlarım :). Şimdi ise yapacağımız örnekte sitemizin URL kısmını yazalım ve bunun geçerli olup olmadığına bakalım. Kullanımı tıpkı e-mail doğrulamaya benzer dostlarım lakin çok ufak bir fark var. E-Mail doğrulama işleminde filter_var() fonksiyonu içerisine 2. parametre olarak FILTER_VALIDATE_EMAIL yazmıştık. Bunda ise FILTER_VALIDATE_URL yazmamız gerekir dostlarım çünkü geçerli bir url mi kontrolünü yapıyoruz :). Gelin hızlıca bunun da kodunu yazalım

<?php
$url = "https://mfsoftware.net"; // SİTE URL MİZİ YAZDIK
$validate_url = filter_var($url,FILTER_SANITIZE_STRING); // İLLEGAL KARAKTERLERİ SİLDİK
if (filter_var($validate_url,FILTER_VALIDATE_URL)){
    echo "URL Geçerli";
}else{
    echo "URL Geçersiz";
}

// Ekran Çıktısı: URL Geçerli
?>

şeklinde kodumuzu yazdık dostlarım :). Burada süreç aşağıdaki gibi işledi

  1. Sitemizin URL adresini yazdık
  2. Bu URL üzerinde illegal stringleri temizleyip $validate_url değişkenine atadık
  3. Daha sonra filter_var($validate_url,FILTER_VALIDATE_URL) olarak url mizi kontrol ettirdik.
  4. 3. Adımdaki işlem sonucu true ise URL Geçerli, Değil ise URL Geçersiz yazdırdı dostlarım :). Bütün işlemler bu kadar

Artık URL adresinin de geçerli olup olmadığı filtresini yazacak duruma geldiğinizi varsayıyorum dostlarım :). Şimdi gelelim diğer bir örneğe

PHP Filtreleme ile IP Adresi Geçerliliği

Dostlarım bu filtreleme de özellikle php ile network işi yazılımları yaparken karşımıza çıkacak bir filtrelemedir. Neden diye sorarsanız dostlarım ağ çekme ağ kablolama vs işlemlerinde sürekli olarak ip adresi döndüğü için bu filtreleme bizim girdiğimiz ip adreslerini filtrelememizde çok ama çok yardımcı olacaktır dostlarım :). Sözü daha fazla uzatmadan kodlamaya geçelim

<?php
$ip = "127.0.0.1"; // IP MİZİ YAZDIK
$validate_ip = filter_var($ip,FILTER_SANITIZE_STRING);  // İLLEGAL KARAKTERLERİ SİLDİK
if (filter_var($validate_ip,FILTER_VALIDATE_IP)){
    echo "IP Geçerli";
}else{
    echo "IP Geçersiz";
}

// Ekran Çıktısı: IP Geçerli
?>

şeklinde kodlarımızı yazdık dostlarım :). Buradaki süreç de diğer işlemlerdeki ile aşağı yukarı aynı. Gelin ispatlayalım

  1. Deneme olarak lokal ip adresimizi (127.0.0.1) yazdık
  2. IP mizin içerisinden illegal karakterleri sildik ve sonucu $validate_ip değişkenine aktardık
  3. Daha sonra filter_var($validate_ip,FILTER_VALIDATE_IP) olarak yazdığımız IP adresinin geçerli olup olmadığını kontrol ettirdik :)
  4. 3. Adımdaki işlemin sonucu true ise IP Geçerli, değilse IP Geçersiz şeklinde ekranımıza yazı yazdıracak

Ve biz de makine adresimizi girdiğimizden ekranımıza IP Geçerli ifadesini bastırdı :)


Evet dostlarım bu yazımda PHP üzerinde filtrelerin ne olduğuna ve niçin kullanıldığına, kullanım örneklerine elimden geldiğince değindim :). Umarım faydalı olmuşumdur. Biraz karmaşık gelmiştir anlıyorum ama yapmanız gereken istikrarlı ve azimli bir çalışmak ve bolca pratik yapmaktır. Bu ikisini sürekli yaptığınızda zaten başarı sizin için kaçınılmaz oluyor dostlarım :)

Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim :)

Muhammed Fatih BAĞCIVAN
Yazar Hakkında

Kendi Halinde Bir Backend Developer

Önceki YazıPHP de Çerez (Cookie) İşlemi
Sonraki YazıNode.js Nedir ve Nasıl Proje Oluşturulur ?
Yorumlar (0)
Bu Yazıya Ait Hiçbir Yorum Bulunamadı (veya admin onaylamadı). İlk Yorum Yapan Sen Ol
Yorum Yapabilirsiniz