myhere adlı üyeden alıntı: mesajı görüntüle
hımm o farklı birşey onu switch case ile çözebilirsin, yukarıdaki functionu veri kontrol ve sql injection için vermiştim

hemen swirch case içinde kısa bir örnek vereyim

yanlış anlamadıysam şuna benzer bişey yapmaya çalışıyorsun sen


function kontrol($veri){
    
    if(strlen($veri)<=0){ 
        return false; 
        }
    
    if(get_magic_quotes_gpc()){
            $veri= stripslashes($veri);
        }
        if(function_exists("mysql_real_escape_string")){
            $veri= mysql_real_escape_string($veri);
        }else{
            $veri= addslashes($veri);
        }

    $veri = filter_var($veri, FILTER_SANITIZE_STRING);  
    return $veri;
    
}  

$gelen = kontrol($_GET['sayfa']);  // burada get teki veriyi string olarak ve sql_incjection dan korunmuş bişekilde alıyorsun ve switch e gönderiyorsun  

switch($gelen){
  case "index";
  echo "index sayfası"; // burada index iken olacak şeyleri yaptırabilir ya da başka sayfa include edebilirsin.
  break;

  case "hakkimizda";
  echo "hakkımızda sayfası"; // burada index iken olacak şeyleri yaptırabilir ya da başka sayfa include edebilirsin.
  break;

  deafult:
  echo "index sayfası"; // hiçbir durum sağlanmazsa çalışacak kodlar

}
fatihsarac adlı üyeden alıntı: mesajı görüntüle
ilk olarak $_get diye bir şey yok, $_GET olması lazım
ikinci olarak php (eğer hataları gizle dememişsen) get, post, resquet gelmeyen yerde tanımlamışsa hata verir. bunun iki çözümü var 1. si sayfanın en başına error_reporting(0) yazarsan bu tarz hataları göstermez ama bu üşengeç adamın işidir.

yani sayfa.php'de $veri = $_GET['veri'] şeklinde bir kod yazarsan, sayfa.php?veri=deger oluncaya kadar hata verir.

2. ve olması gereken çözüm şudur;

$veri = isset($_GET['veri']) ? $_GET['veri'] : null;

yani $veri diye bir değişken tanımlıyorum, get gelmişse get ile set et, yoksa null olarak set et demiş olduk.


ikinci olarak "#(\r\n|\n|\r)#" bir regex desenidir. diyor ki eğer değişkenin içindeki veride \r\n, \n ya da \r varsa manasına gelir.
çok teşekkürler cevaplar için.çözdüm sitemi fatih hocanın dediği kodları ekleyince hatalar kalkıyor