PHP Session (Oturum) Nedir? – PHP Dersleri

0
2262
PHP Session (Oturum) Nedir? - PHP Dersleri
PHP Session (Oturum) Nedir? - PHP Dersleri

Session kavramı, birden çok sayfada kullanılacak bilgileri (değişkenlerde) depolamanın bir yoludur. Çerezlerden farklı olarak, bilgi kullanıcıların bilgisayarı üzerinde saklanmaz.

PHP Session Nedir?

Bir uygulama ile çalışırken, onu açarsınız, bazı değişiklikler yaparsınız ve daha sonra onu kapatırsınız. Bu bir session (oturum) gibidir. Bilgisayar sizin kim olduğunuz bilir. Uygulamayı açtığınızda ve kapattığınızda bilir. Fakat, internet üzerinde bir problem vardır: web sunucuları sizin kim olduğunuzu veya ne yaptığınızı bilemez çünkü, HTTP adresi durum/hal/konum (state) sağlayamaz.

Session değişkenleri, birden çok sayfada kullanılan kullanıcı bilgilerini (kullanıcı adı, mail, kullanıcı konumu vb.) depolayarak bu sorunu çözer. Varsayılan olarak, Session değişkenleri kullanıcı tarayıcıyı kapatana kadar sürer.

Böylece, Session değişkenleri bir tekil kullanıcı hakkındaki bilgiyi tutar ve bir uygulamadaki tüm sayfalar tarafından kullanılabilir.

PHP Session Başlatma

Bir Session session_start() fonksiyonu ile başlatılır.

Session değişkenleri PHP genel değişkeni olan $_SESSION ile belirlenir.

Aşağıda “demo_kampuskod1.php” isimli bir php sayfası oluşturduk. Bu sayfa üzerinde yeni bir PHP Session başlattık ve bazı session değişkenleri belirledik.

<?php
//Session başlatıldı.
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Session değişkenleri belirlendi.
$_SESSION["siteAdi"] = "Kampüs Kod";
$_SESSION["siteTitle"] = "Kampuskod Türkiye'nin Teknoloji ve Sosyal İçerik Haber Sitesi";
echo "Session değişkenleri belirlendi.";
?>

</body>
</html>

Önemli Not: session_start() fonksiyonu, dokümanlarınızda birinci şey olmalıdır. Yani herhangi bir HTML tagından önce yazılmalıdır.

PHP Session Değişken Değerlerini Çağırma

Şimdi, “demo_kampuskod2.php” isimli başka bir sayfa oluşturalım. Bu sayfa üzerinden, “demo_kampuskod1.php” sayfasında oluşturduğumuz session bilgilerine erişeceğiz.

Oturum değişkenlerinin her yeni sayfaya ayrı ayrı aktarılmadığına, bunu yerine her sayfanın başında açtığımız oturumdan alındığına dikkat edin. ( session_start() )

Ayrıca, tüm session değişken değerleri, genel $_SESSION değişkeninde saklanır/tutulur.

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Önceki sayfada belirlenen session değişkenleri echo metotu ile ekrana yazılır.
echo "Site Adı: " . $_SESSION["siteAdi"] . ".<br>";
echo "Site Başlığı " . $_SESSION["siteTitle"] . ".";
?>

</body>
</html>

Bir kullanıcı oturumu için tüm session değişkenlerini göstermenin başka bir yolu ise aşağıdaki gibidir:

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
print_r($_SESSION);
?>

</body>
</html>

PHP Session Değişkenini Değiştirmek

Bir Session değişkenini değiştirmek için, onu ezmelisiniz/yeniden değer atamalısınız.

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Değiştirmek için yeniden değer ataması yapıyoruz.
$_SESSION["siteAdi"] = "Kampüs Kod - Herkes için bir şey";
print_r($_SESSION);
?>

</body>
</html>

PHP Session Öldürmek / Destroy PHP Session

Tüm genel session değişkenleri silmek ve session öldürmek için, session_unset() ve session_destroy() kullanılır.

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Tüm Session değişkenleri silinir
session_unset();

// Session öldürülür/yok edilir :)
session_destroy();
?>

</body>
</html>

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz