PHP

PHP’de Session (Oturum Yönetimi) – 11

Session (oturum) birden çok sayfa arasında kullanılacak (değişkenler) bilgileri saklamak için kullanılan bir yoldur. Veriler cookie (çerez) gibi kullanıcının bilgisayarında değil, kodun çalıştığı uzaktaki bilgisayarda (sunucu) saklanmaktadır.

Session nerelerde kullanılır?

Oturum açmak kavramını duymuşsunuzdur. Üyelik sistemi olan web sitelerine kullanıcı adı ve şifrenizi girerek oturum açarsınız. Oturum açtıktan sonra girdiğiniz site içerisinde dolaşırken o oturum bilgileri doğrultusunda web sitesinde rahatlıkça dolaşabilir ve belli başlı size ait işlemleri gerçekleştirebilirsiniz. Örneğin; Facebook sitesinde oturum yaptıktan sonra size ait fotoğrafları yükleyebilir, video paylaşabilir, yazılar yazabilirsiniz. Bu işlemleri gerçekleştirirken hem kendi oturum bilgileriniz dahilinde yaparsınız. Eğer başka bir kişinin bilgileriyle oturum açsaydınız. Başka kişiye ait bir takım işlemleri gerçekleştirebilirdiniz.

Oturum bilgilerini nerede tutacağız?

Çerezlerde oturum bilgilerini $_COOKIE adlı global dizide tutuyorduk. Oturumlarda da $_SESSION adlı global dizisinde tutacağız.

PHP’de Çerez (Cookie) adlı yazımı okuyabilirsiniz.

Session oluşturma

Session oluşturmak ve kullanmak için oturum başlatma fonksiyonumuzu – session_start() – oturum tanımlayacağınız satırın üst kısmına yazmanız gerekmektedir. Ama benim tavsiyem bir üst satır yerine PHP’yi yazmaya başladığınız kod satırının (<?php) hemen altına yazmanız.

Yukarıdaki kod parçasında ilk önce oturumu başlattık ve adsoyad adında bir session oluşturarak değerine Fatih Çal atadık. Bu oluşturduğumuz session değerini tarayıcıyı kapatana kadar tutacaktır ve sayfalar arasında geçiş yapsanız bile değer kaybolmayacaktır.

Sessionlara sadece bir değil birden fazlada değer atayabilirsiniz. Bu işlemi sessiona bir dizi atayarak gerçekleştirebilirsiniz.

 Session silme

Daha önceki yazılarımızda silme (yok etme) işlemi için kullandığımız unset() fonksiyonunu session içinde kullanabilirsiniz.

Oluşturduğumuz site adlı session‘ı unset() fonksiyonu ile sildik.

Oturum kapatma (tüm sessionları silmek)

Oturum açtınız ve belirli sessionlar oluşturduğunuz. Bunların tamamını silmek (oturumu kapatmak) için session_destroy() fonksiyonunu kullanmanız yeterli olacaktır.

Kocaeli Üniversitesi Teknik Eğitim Fakültesi’nden Bilgisayar Öğretmenliği mezunu olan Fatih Çal, bilişim sektöründe 10 seneyi aşkın tecrübeye sahiptir. Başta web projeleri olmak üzere çeşitli projelerde ve kurumlarda çalışmıştır. Şuan Uluslararası Genç Derneği’nde Başkan Yardımcısı, Uluslararası Bilişim Teknolojileri Derneği’nde Yönetim Kurulu Üyesi ve İstanbul Medeniyet Üniversitesi Bilgi İşlem Daire Başkanlığında Sistem Yönetimi ve Yazılım Koordinatörü olarak görev almaktadır.