Session Kullanımı
Session yani oturum sayfalar arasın veri akışı için kullanılan ve genellikle geçici bir klasör içerisinde dosya oluşturarak çalışan bir yöntemdir. Bir ziyaretçi için kaydedilen veriler, yine aynı ziyaretçi tarafından her sayfada erişilebilir. "session_start()" "session_destroy()" fonksiyonları ve "$_SESSION" süper global değişkeni giriş düzeyinde bize yeterli olacaktır.
Bir önceki sayfada verilerin nasıl ekleneceğini anlattık, şimdi ise bunlar için örnekler yapalım.
Oturum açarken şöyle bir dosya kullanalım
PHP kodu
<?php function hash($alan1,$alan2='') { } $sorgu=mysql_query("SELECT id FROM uyeler WHERE nick='".$_POST['isim']."' AND sifre='".$_POST['sifre']."' LIMIT 1"); if($sorgu!==false) { $_SESSION['isim']=$_POST['isim']; $_SESSION['hash']=hash($_SESSION['isim']); echo 'Oturumunuz açıldı'; } else 'Hatalı deneme'; ?>
Görüldüğü gibi form aracılığıyla post edilen kullanıcı adı ve şifreyi kontrol etti, kullanıcı adını ve hashini de session a kaydetti. İsim ve hash bana yetmez derseniz, başka bilgiler de ekleyebilrisiniz ancak session dosyasının küçük olması performans açısından iyidir.
Artık herhangi bir sayfada üyelik kontrolü yapacağımız zaman alttaki şekilde kullanabiliriz.
PHP kodu
<?php // regenerate etmek zorunda değilsiniz function hash($alan1,$alan2='') { } if($_SESSION['hash']!=hash($_SESSION['isim']) { kayitdefteri($_SERVER['REMOTE_ADDR'].' İp li kullanıcı oturum sırasında ip değiştirdi'); } } else { echo 'Merhaba ziyaretçi'; } /* Çalışmasını istediğiniz kodlar */ ?>
Bir Sonraki sayfa: Oturumu MySQL aracılığı ile gerçekleştirmek