• 14-09-2019, 02:12:50
    #1
    Merhabalar, başlıkta belirttiğim gibi inputtan post edilen verinin içeriğini nasıl kontrol edebilirim.

    Örneğin:
    https://www.r10.net/google-adsense/ böyle bir link yapısı geldiği zaman post etsin fakat '.com*https://www.r10.net/.'*google-adsense/ böyle özel ifadelerin olduğu link yapısını post etmesin.

    Nasıl bir fonksiyon yazarsam istemediğim karakterleri engelleyebilirim?
  • 14-09-2019, 02:20:11
    #2
    Üyeliği durduruldu
    function clear($var_string) {
        $string_scan = array("*"); // istemediğiniz karakterler
        $string_result = array(""); // istemediğiniz karakterlerin yerine gelecekler, tırnak içinde boşluk yaparsanız tamamen gizler.
        $var_string = trim(str_replace($string_scan, $string_result, $var_string));
        return $var_string;
        }
    echo clear("test"); # Bu şekilde kullanabilirsiniz.
  • 14-09-2019, 14:30:51
    #3
    TayfunGuler adlı üyeden alıntı: mesajı görüntüle
    Merhabalar, başlıkta belirttiğim gibi inputtan post edilen verinin içeriğini nasıl kontrol edebilirim.

    Örneğin:
    https://www.r10.net/google-adsense/ böyle bir link yapısı geldiği zaman post etsin fakat '.com*https://www.r10.net/.'*google-adsense/ böyle özel ifadelerin olduğu link yapısını post etmesin.

    Nasıl bir fonksiyon yazarsam istemediğim karakterleri engelleyebilirim?
    İlk olarak gelen veriyi temizleyin ardından url kontrolü için kendi standartlarınıza göre regex yazın eğer temizlenen veri sizin standartlarınıza göre değilse if else kullanarak işlem yaptırın

    aşağıya basit url kontrolü yapan bir regex ekledim

    eğer url_kontrol fonksiyonuna http , https , www ile başlayan url yazarsanız sorunsuz yazısını basar ama başlarken http , https , www bunlar dışında bir harf kelime veya karakter varsa hatalı url yazısını basar burda önemli olan url'den sonra gelen veriyi temizlemek onuda ihtiyacınıza özel temizleme fonksiyonları kullanarak yapabilirsiniz

    
    function urlkontrol($url_cek){
    $regex_tanimla = '/^(http://www.|https://www.|http://|https://)?[a-z0-9]+([-.]{1}[a-z0-9]+)*.[a-z]{2,5}(:[0-9]{1,5})?(/.*)?$/m';
    if(preg_match( $regex_tanimla,$url_cek)){
    echo "sorunsuz";
    }
    else{
    echo "hatalı url";
    }
    }
    
    urlkontrol("'.com*https://www.r10.net/.'*google-adsense/");