PHP – Session Kullanımı

PHP

Bu yazımda PHP’de Session başlatma, kullanma ve silme işlemlerini göstereceğim.


PHP Session Oluşturma Ve Kullanma

PHP’de oturum bilgilerini saklamak ve oturumları yönetmek Session’lar kullanılır. Session’ların çerezlerden farkı; çerezler kullnaıcı bilgilerini local yani bilgisayarda tutarlar, Session’lar ise bilgileri sunucu tarafında tutarlar. Bu nedenle güvenliğin önemli olduğu yerlerde Session’ların kullanıldığını görürsünüz.
Session başlatıldığı anda veriler sunucu bilgisayarı üzerinde ki bir text dosyasında saklanır. Kullanıcı oturumu kapatığında verileri silinir ve Session’lar çerezler gibi süreli oluşturulamaz.

Küçük bir örnek yapalım ve bunun üzerinden devam edelim.

  session_start();
  $_SESSION['Kullanici_adi'] = 'Furkan';
  $_SESSION['Parola'] = 'Gulsen';
  echo 'Kullanıcı adı: ' .   $_SESSION['Kullanici_adi'] . '<br>';
  echo 'Parola: ' .  $_SESSION['Parola'];
  session_destroy();

Kullanıcı adı: Furkan
Parola: Gulsen

Görüldüğü gibi sessionlara başlama için ilk olarak session_start() metodunu kullanmalıyız. Eğer bunu kullanmadan devam edersek hata verecektir. En sonda ise session_destroy() metodunu kullanıp sessionları kapatıyoruz.

$_SESSION[] metoduları ile değişkenlere değerler atayıp bu değişkenleri kullanıcıya ait yapabiliyoruz. Yukarıda görüldüğü üzere, kullanıcı adı ve parola adında iki adet değişkene(session) belirli değerler verilmiş. Bu bunlar session_destroy() kullanılmadan yazırılmış. Eğer session_destroy() metodu kullanıldıktan sonra yazılıcak olsaydı, hata verecekti.


Örnek:

  session_start();
  $_SESSION['Kullanici_adi'] = 'Furkan';
  $_SESSION['Parola'] = 'Gulsen';

Yukarıdaki kodları çalıştırdıktan sonra bunların hepsini silelim. Ve yerine şu kodları yazalım.

  echo 'Kullanıcı adı: ' .   $_SESSION['Kullanici_adi'] . '<br>';
  echo 'Parola: ' .  $_SESSION['Parola'];

Her hangi bir çıktı aldınız mı? Aldınız. Peki session_start() kullanmadan devam edersek hata alacağımızı söyledekij yukarıda. Şimdi neden almadık ?

Bunun nedeni zaten kullanmış olmamız. Görüdüğü üzere session_destroy() metodunu kullanmadık. Yani session yapısını daha yıkmadık. Bu da demek oluyor ki bütün kodumuzda sadece bir kez session_start() kullanmamız yeterli. Kapatmadığımız sürece session yapısını istediğimiz yerde kullanabiliriz.


PHP Session Silme

Yukarıdaki kodu kullanalım:

  session_start();
  $_SESSION['Kullanici_adi'] = 'Furkan';
  $_SESSION['Parola'] = 'Gulsen';
  echo 'Kullanıcı adı: ' .   $_SESSION['Kullanici_adi'] . '<br>';
  echo 'Parola: ' .  $_SESSION['Parola'];
  session_destroy();

Bunun sonucunda bize şu çıktıyı veriyordu:

Kullanıcı adı: Furkan
Parola: Gulsen

Örneğin burada kullanıcı adını silmek istersek unset() metodunu kullanacağız.

  unset($_SESSION['Parola']);

Bunu yaptıktan sonra paralo silinmiş olacaktır.

Yorum bırakın