İlk olarak bu değerlerimizi kontrol ettirelim.
Örnek $_POST kontrolü;
$verimiz = $_POST['veri'];
//Veride SQL terimleri var mı yok mu kontrolü yapan fonksiyonumuz;
function ctrl($suz) {
$sansurle = array('CREATE','DELETE','SELECT','FROM','LIMIT','TABLE');
$editle = array('---','---','---','---','---','---');
$isle = str_replace($sansurle,$editle,$suz);
$safhal = mysql_real_escape_string($isle);
return $safhal;
}
$veri[2] = ctrl($verimiz); // Kontrolden geçirdik artık işlem yapabiliriz.
Aynı şekilde $_GET'e uyarlarsak;
$verimiz = $_GET['veri'];
//Veride SQL terimleri var mı yok mu kontrolü yapan fonksiyonumuz;
function ctrl($suz) {
$sansurle = array('CREATE','DELETE','SELECT','FROM','LIMIT','TABLE');
$editle = array('---','---','---','---','---','---');
$isle = str_replace($sansurle,$editle,$suz);
$safhal = mysql_real_escape_string($isle);
return $safhal;
}
$veri[2] = ctrl($verimiz); // Kontrolden geçirdik artık işlem yapabiliriz.
$_GET ve $_POST değerlerinde sayı kontrolü;
Bu iş için intval(); kullanılabilir ama ben intval(); kullanmayı sevmiyorum. 32 bit ve 64 bit işletim sistemlerine göre alabileceği maksimum değerler değişiyor. Bazen hata verebiliyor. Bu yüzden Türk işi bir çözüm var :cool:
// Örnek $_GET
$veri = $_GET['sayi']+0;
// Örnek $_POST
$veri = $_POST['sayi']+0;
Gelen sayıyı sıfırla topladığımızda hiçbir şey değişmiyor ancak gelen bir harf, kelime, vs. olsaydı değer otomatik olarak "0" olacaktı.