PHP – Sessions

PHP dilinde Session , bir kullanıcı için ayar değişiklikleri ve hakkındaki bilgileri , almak ve özelleştirmek için kullanılır.Session değişkenleri ,sadece tek kullanıcı hakkında veri tutar ve işlem yapabilir ayrıca bütün sayfalar dahilinde tek kullanıcı hakkında uygulama yapar.

PHP Session Değişkenleri

Bir proje üzerinde çalışırken , proje açarsınız, bazı gerekli değişiklikleri yaparsınız ve sonrasında uygulamayı kapatırsınız.PHP’ de Session da aynı bu şekildedir.Bilgisayar sizin kim oldugunuzu bilir,ve uygulamalarınıza ne zaman başladığınızı ve sona erdirdiğinizi takip eder.Ama internet üzerinde bu konuda bir sorun meydana gelir; Web sunucusu sizi ve neler yaptığınızı tanıyamaz, çünkü HTTP adresi bu durumu sağlayamaz.

PHP Session , server üzerinde yapılan son uygulamayı,bilgileri(Örn; kullancı adi, alışveriş bilgileri…) yerleştirerek bu sorunu ortadan kaldırır.

Session bilgileri kullanıcı siteden ayrıldıktan sonra silinir.Eğer sürekli bir takip isterseniz veritabanına verileri kaydetmeniz mümkündür.

Session her ziyaretçi için bir id(UID) numarası atar ve bütün bilgileri bu id e göre yerleştirir.UID numarası aynı zamanda çerezlere de kaydedilir veya URL’ e yerleştirilir.

Session BaşlatmakSession bilgilerini kaydetmeden önce, Session başlatmak gerekir.Not: session_start() fonksiyonu <html> tagından önce yazılmalıdır:

<?php session_start(); ?>

<html>

<body>

</body>

</html>

Yukarda yazılan kod kullanıcıya ait bir Session açar ve kullanıcı hakkındaki bilgileri önceki konumuzda anlattığımız gibi UID numaralarına göre kaydetmeye başlar.

Session Değişkenini Yerleştirmek$_SESSION değişkenini yerleştirmenin ve düzenleme yapmanın yolu örneğimizdedir, buyrun bakalım hemen;

<?php session_start();

//session verilerini yerlestir

$_SESSION[‘views’]=1;

?>

<html>

<body>

<?php

// session verilerini duzenle

echo “Sayfa gösterimi=”. $_SESSION[‘views’];

?>

</body>

</html>

Çıktı:

Sayfa gösterimi=1

Yukardaki örnekte , basit bir sayfa gösterim sayacı tasarladık. isset() fonksiyonu ile “views” değişkeninin kaydedildiğini kontrol edelim. “views” değişkeni yapılandırıldıysa ,sayacımızı arttırabiliriz. Eğer değişkenimiz yoksa,”views” adıyla yeniden yapılandırıyoruz ve değerini 1 olarak atıyoruz:

<?php

session_start();

if(isset($_SESSION[‘views’]))

$_SESSION[‘views’]=$_SESSION[‘views’]+1;

else

$_SESSION[‘views’]=1;

echo “Gösterim=”. $_SESSION[‘views’];

?>

Session YoketmekSession’ımızı yoketmek veya sona erdirmek için unset() yada session_destroy() fonksiyonlarını kullanacağız.Session dahilinde oluşan belirli bir değişkeni silmek için unset() fonksiyonunu kullanıyoruz;

<?php

unset($_SESSION[‘views’]);

?>

Session’a ait tüm verileri yoketmek için session_destroy() fonksiyonunu kullanıyoruz:

<?phpsession_destroy();?>

Not: session_destroy() tüm session u sıfırlar ,böylece kaydedilen tüm veriler yokolur.