Teşekkürler mehmet . aslında o kod sadece kullanıcı adı için değilde daha bir genel durum için yazılımış bi kod. Yukardaki örnek kodu "Firma adı " adında bir input için kullanıyorum ve içeriği örnek olarak şöyle değerler içerebiliyor
Taze&doğal Ürünler Tic. Ltd. Şti. . Bu yüzden aralarda boşluğa hatta ve hatta kodda yok ama (.) ve (&) karakterlerine izin vermem gerekiyor .
aslında Konu benim açımdan yeterince açıklayıcı ama okuyacak diğer arkadaşlara bir fikir vermesi açısından biraz detay vermek gerekirse
https://www.btkakademi.gov.tr/ adresinde ücretsiz sunulan isterseniz edevlet şifreniz ilede girebilidiğiniz portalda gerçekten gereğinden fazla detaylı bir anlatıma sahip hoş bir Php kursu var bu dersin 40.Örnek uygulamalar kısmında hoca şunu yapıyor ,
function filtrele($deger) {
$trimle = trim($deger);
$strip =strip_tags($trimle);
$addslash = addslashes($strip);
$htmls =htmlspecialchars($addslash, ENT_QUOTES,'UTF-8');
$sonuc = $htmls;
return $sonuc;
}
Not (Videolu anlatımda
$addslash = addslashes($strip); kısmı yok ben ekledim )
ve bu filtrele fonksiyonunuda posttan gelen değerlerde
$gelenkullaniciad= filtrele($_POST['kullaniciad'])
şeklinde kullanıyor. Bu kadar detaya gerek varmı yokmu kararını verecek php bilgim yok ancak adamıın kodu ile kendi sade preg_match ile kontrol sağladığım kodu karşılaştırdığımda benimki biraz öğrenci menüsü gibi kaldı tüm bu konuyu o yüzden açtım..
İKİNCİ olarak
Sıkı araştırmacıyımdır bu yüzden yabancı kaynaklar nasıl yapıyor diye biraz detaya indiğimde
Yabancı kaynaklar , özellikle form değerlerini kontrol etme söz konusu olduğunda trim, strip tags , addslashes ve htmlspecialchars gibi fonksiyonlar yerine kitaba (
https://www.php.net/)daha çok bağlılar ve özellikle formdaki bir input söz konusu ise
https://www.php.net/manual/en/ref.filter.php ve
https://www.php.net/manual/tr/filter.filters.php bu iki linkde bulunanları uyguluyolar.
Şimdi yazacağım tespitten emin değilim yanlış olabilir ancak yukardaki adı geçen 4 fonksiyon gibi bir kaç fonksiyon daha varki bir makale gibi bir paragraf gibi birşey söz konusu ise daha çok
ara-bul-düzelt tarzı işlerde kullanıyorlar .
ek olarak eyer eski örnekleri inceliyor iseniz genelde preg_match ifadesini daha çok email kontrolu için kullanmışlar bunun yerine son bir kaç yıllık yeni örneklerde yukardaki adreste bulunan sanitize mail ve validate mail filtreleri olmazsa olmazları
Dip not : Tüm araştırmalaımda google yada youtube olsun mutalaka arama filtresine zaman sınırlamasını koyar son bir yıla ait sonuçları incelerim ..