PHP de if gereksiz yere neden çalışıyor?

PHP de yazdığım bir kod içinde ki if gereksiz yere çalışıyor.

SESSION oluşturdum. Dolu ise index’e yönlendirecek. SESSION boşken de çalışıp hata veriyor. Neden?

bence sessiondaki o degiskenin var olup olmadigina ve bos olup olmadiginada bakmaniz gerekiyor. Ornek:

if(isset($_SESSION['kadi']) && !empty($_SESSION['kadi'])){
...
}

Değişken var ama bu hata çıkıyor.

if(!empy($_SESSION[‘kadi’]

şeklinde düzenledim.bu sefer de çıkış yapınca aynı yerde hata gözüküyor.

Not: Her iki durumda da sistem çalışıyor sadece if koşulu sağlamamasına rağmen çalışıyor.

if kosulu calisiyorsa sayfada $_SESSION ciktisi alarak kontrol edermisin, kontrol ettigin degisken var mi ? varsa bosmu dolu mu?

Session doluysa bu hata ekranda gözüküyor. Sesion Boşsa düzgün şekilde çalışıp beni index’e yönlendiriyor. İf’in gerksiz yere çalışması daha önce de başıma gelmişti.

Yazdigin kod session bos diye degil, dolu mu diye kontrol ediyor. Tam olarak istedigin nedir? doluysa if icerisindekiler calissin mi?

session doluysa çalışın istiyorum. Onu şu şekilde çözdüm. Dolu değilse çalışmasın gibi ters bi mantıkla atlattım ama bunun çalışması yine de garip geliyor. Hala anlayabilmiş değilim.

Aslinda bunun calismasi gerek, ikisininde varligini zorunlu kilmistim ilk mesajimda ama burda ikisinden birisi mevcut ise index e yonlendirsin seklinde calismasi lazim:

if(isset($_SESSION['kadi']) || !empty($_SESSION['kadi'])){
...
}

Bu oldu. Teşekkürler.

1 Beğeni