PHP SESSION KULLANIMI
PHP SESSION Kullanımı üyelik ile ilgili işlemlerde kullanır. Asıl amacı oturum açma değişkenidir. $_COOKIE benzerlik gösterir ancak aralarında şöyle bir fark var $_SESSION tutulan bilgiler kişinin bilgisayarında değil sunucuda tutulur. O yüzden $_SESSION çok daha güvenlidir. Ama nerede neyi kullanacağınızı dersleri takip ettikçe çok daha iyi anlayacaksınız. SESSION başlatmak için ve onları takip etmek için en başta her zaman session_start() fonksiyonunu yazmalısınız. Bu fonksiyon oturum açma işlemini başlatacaktır.
PHP SESSION Kullanımı
Yeni Bir Session Oluşturma ;
- <?php
- session_start();
- $kullanici_adi = "Sercan";
- $_SESSION["giris"] = $kullanici_adi;
- ?>
Session Ulaşmak ;
- <?php
- session_start();
- echo $_SESSION["giris"];
- ?>
Session Güncelleme ;
- <?php
- session_start();
- $yeni_kullanici_adi = "Angel";
- $_SESSION["giris"] = $yeni_kullanici_adi;
- ?>
Session İle Oturum Açma
Okuldaki hocalar gibi basit örnekler verip sınavda zor soran öğretmenlere dönmeyeyim
şimdi nasıl oturum açama biliriz onun hakkında bir örnek yapalım ;
- <?php
- session_start();
- $kullanici_adi = "Sercan";
- $sifre = 123456;
- if(isset($_SESSION['loginin']) && $_SESSION['loginin'] == true){ // Daha önce oturum açıldıysa anasayfaya gidiyor.
- header("Location: index.php");
- }
- if(isset($_POST['kullaniciadi']) && isset($_POST['sifre'])){ // Burada input alanına giren verileri değişkendeki verilerle karşılaştırıyorum doğruysa anasayfaya değilse bulunduğu sayfaya hata çıkıyor
- if($_POST['kullaniciadi'] == $kullanici_adi && $_POST['sifre'] == $sifre){
- $_SESSION['loginin'] = true;
- header("Location: index.php");
- }else{
- echo 'Giriş Bilgileri Hatalı.';
- }
- }
- ?>
Koda açıklama ekledim ama birazda açıklıyayım arkadaşlar burda en önemli kod ; $_SESSION[‘loginin’] == true bu nedeni ise bu kodun loginin isimli session olup olmadığına bakıyor. Diğer if bloğun da ise eğer kullanıcı bilgileri doğru girildiyse $_SESSION[‘loginin’] = true yap diyoruz ve böylelikle oturum açma iznini veriyoruz. Peki çıkış yapmak için nasıl bir mantık kuracağız.
Session İle Çıkış Yapmak
- <?php
- session_start();
- session_destroy(); // Bu Fonksiyon ile tüm Session siliyoruz.
- header('Location: login.php');
- ?>
Özellikle yönetim paneli yapıyorsanız session_destroy(); fonksiyonunu kullanın bazı kişiler unset() fonksiyonu ile yapıyor ama bu yanlış unset() kullanırken tek tek session ları belirtip imha etmeniz gerekli yani şöyle ;
- <?php
- unset($_SESSION['loginin']);
- ?>
Onunda şöyle bir tehlikesi var sonuçta insanız ve hata yapabiliriz eksik tanımlama yaparsanız oturum kapatma çalışmaz oda size sıkıntı çıkartır o yüzden direk session_destroy(); fonksiyonu kullanın kafanız rahat olsun.