Sinirlarin
Disinda Degerler Ornegin sinirlarimiz 1-10 araligi ise
,bu verileri girerek programi test edin : - 5 , 0 , 999 ,
- 1E5 , "kopek" , 5.5 , 5,5 ,"true", "false" ,(empty),+4,4+4
, 5/0 , 9.99, 9.9999 , 9,99999999 , 003 , #5/12/59# , "include("dosya")
Kullaniclar gibi dusunmek
Programinizi yazarken, verileri internet uzerinde yer alan
sayfalardan alacaginizi unutmamalisiniz.Bu durumda gerek
acemi gerek uzman bir suru kullanici sayfalariniza bir takim
veriler girip onlari programinizin islemesi icin bekleyeceklerdir..."Bu
yazdigim kodlari kimler kirabilir?"Eger aklinizdan bir an
olsun bu soruyu cikarirsaniz,programiniz uzman kullanicilar
tarafiindan kirilacaktir.tum tedbirlerinizi uzman kullanicilara
gore almalisiniz !
Genel olarak yapilan en buyuk hata, kullanicilarin formlara
veri giri sirasinda bir alani unutmalari olmaktadir.Bu durumu
en iyi sekilde ele almak icin simdi size bir kod parcasi
gosterecegiz,
$BosAlanlar = 0;
if (!$Form_Alani_Bir) $BosAlanlar++;
if (!$Form_Alani_Iki) $BosAlanlar++;
if (!$Form_Alani_Uc) $BosAlanlar++;
if (!$Form_Alani_Dort) $BosAlanlar++;
if (!$Form_Alani_Bes) $BosAlanlar++;
if ($BosAlanlar > 0) {
Formu_Goster (); //Formu tekrar gosteriyoruz.Bir veya daha
fazla alan unutuldu...
} else {
Formu_Isleme_Koy (); //Formdan gelen verileri isleme koyuyoruz.Butun
alanlar dolduruldu...
}
Eger kullandiginiz veritabaninda duzenli bilgiler gormek
istiyorsaniz bu konuda biraz sanssiz oldugunuzu soylemek
zorundayiz...Internet kullanicilari genelde girdikleri verinin
formatina bakmadan islenmesi icin gonderirler.Bu nedenle
siz veritabaninda "Istanbul" gormek isterken "isatanbul"
"ITANBUL" gibi ne oldugu anlasilmayan kelimelerle karsilasirsiniz...Bu
konu icin tabii ki ornekler cogaltilabilir...
Kullaniclari belirli bir kalipta veri girmeye zorlarken
cok dikkatli olmalisiniz.Eger hassas davranmaz iseniz kullaniclariniz
sitenize gelmekten vazgececeklerdir.Kendinizin yapmayacagi
bir islemi kullanicilariniza yaptirmaya calismayiniz...
Veritabaninda tamamen temiz bilgiler saklanmasi gerekmiyorsa
mumkun oldugunca cok bu sekilde yapilan zorlamalardan kacininiz...
Hasta Ruhlu Kullanicilar'dan Korunmak
Bir siteyi ele gecirmeye(hacklemek) calismak internetin
ne yazik ki bir parcasidir.Bizler tasarladigimiz programlarin
internet'te yer alan ara yuzu icin mutlaka bazi guvenlik
tedbirlerini almak durumundayiz.
Programcilik hayatinizin basinda sizden tabii ki kredi karti
bilgilerinin saklandigi bir veri tabani icin guvenli erisim
algoritmalari yazmaniz istenmeyecektir.Bizler bu bolumde
size HTML formlari'nin alinacak onlemlerle daha guvenli
bir hale nasil getirilcegini gosterecegiz.
$Degisken = HTMLSpecialChars ("<B.>Bu yazi kalin goruntulenmez</B.>");
"HTMLSpecialChars " bu fonksiyon ile butun HTML taglari
normal bir text sekline cevrilir.
Kullanicilardan Verilerin Alinmasi
Iste simdi sira "Regular Expressions" konusunun anlatilmasina
geldi.Bu bolumde sizlere kullanicidan alacaginiz verileri
kontrol ederken kullanacginiz " Regular Expressions" tanimlamalarini
PHP ile nasil kullanabilceginizi anlatacagiz.
Sanilanin aksine bu patern'ler yanlizca PHP'ye ozgu degildir.Bu
yazilim kurallarini PHP de oldugu kadar, ayni sekilde Perl,
Python programlama dilleri veya UNIX uygulamalari
olan sed ve egrep icinde de kullanabilirsiniz.