Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Hikaye Ekle

PHP - $_SESSION

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

PHP'deki süper küresel değişkenlerden biri olan $_SESSION, mevcut betikte bulunan oturum değişkenlerinin ilişkisel dizisidir. $HTTP_SESSION_VARS da aynı bilgileri içerir, ancak bir süper küresel değildir ve artık kullanım dışı bırakılmıştır.

Oturum Nedir?

Oturum, verileri tüm bir web sitesinin sayfalarında erişilebilir kılmanın alternatif bir yoludur. Bir kullanıcının bir sunucuyla bağlantı kurduğu zaman ile bağlantının sonlandırıldığı zaman arasındaki süredir. Bu aralıkta, kullanıcı farklı sayfalara gidebilir. Çoğu zaman, bazı verilerin sayfalar arasında kalıcı olarak erişilebilir olması istenir. Bu, oturum değişkenleri tarafından kolaylaştırılır.

Bir oturum, sunucuda kayıtlı oturum değişkenlerinin ve değerlerinin saklandığı geçici bir dizinde bir dosya oluşturur. Bu veriler, o ziyaret sırasında sitedeki tüm sayfalar tarafından kullanılabilir olacaktır.

Sunucu her oturuma benzersiz bir SESSIONID atar. HTTP durumsuz bir protokol olduğundan, oturum değişkenlerindeki veriler oturum sonlandırıldığında otomatik olarak silinir.


session_start() İşlevi

Oturum verilerine erişimi etkinleştirmek için session_start() fonksiyonu çağrılmalıdır. session_start(), bir GET veya POST isteğiyle iletilen veya bir çerez aracılığıyla iletilen bir oturum tanımlayıcısına dayanarak bir oturum oluşturur veya geçerli oturumu sürdürür.

session_start(array $options = []): bool

Bu fonksiyon, bir oturum başarıyla başlatılmışsa true değerini, aksi takdirde false değerini döndürür.

Oturum Değişkenlerini İşleme

Yeni bir oturum değişkeni oluşturmak için $_SESSION dizisine bir anahtar-değer çifti ekleyin.

$_SESSION[ "var"]=value;

Bir oturum değişkeninin değerini geri okumak için echo/print ifadelerini veya var_dump() veya print_r() fonksiyonlarını kullanabilirsiniz.

echo $_SESSION[ "var"];

Mevcut oturumdaki tüm oturum değişkenlerinin listesini elde etmek için, $_SESSION'ı dolaşmak üzere bir foreach döngüsü kullanabilirsiniz.

foreach ($_SESSION as $key=>$val)
echo $key . "=>" . $val;

Tüm oturum verilerini manuel olarak temizlemek için session_destroy() fonksiyonu vardır . Belirli bir oturum değişkeni unset() fonksiyonunu çağırarak da serbest bırakılabilir.

unset($_SESSION[ "var"]);

Oturum Fonksiyonlarının Listesi

PHP'de oturum verilerini yönetmek için birçok yerleşik fonksiyon vardır.

Oturum FonksiyonlarıTanım
session_abortOturum dizisi değişikliklerini at ve oturumu sonlandır
session_cache_expireGeçerli önbellek süresinin dolmasını döndür
session_cache_limiterMevcut önbellek sınırlayıcısını al ve/veya ayarla
session_commitsession_write_close takma adı
session_create_idYeni oturum kimliği oluştur
session_decodeOturum kodlu bir dizeden oturum verilerini çözer
session_destroyBir oturuma kayıtlı tüm verileri yok eder
session_encodeGeçerli oturum verilerini oturum kodlu bir dize olarak kodlar
session_gcOturum verilerinin çöp toplamasını gerçekleştirin
session_get_cookie_paramsOturum çerez parametrelerini alın
session_idGeçerli oturum kimliğini al ve/veya ayarla
session_is_registeredBir oturumda küresel bir değişkenin kayıtlı olup olmadığını öğrenin
session_module_nameGeçerli oturum modülünü al ve/veya ayarla
session_nameGeçerli oturum adını al ve/veya ayarla
session_regenerate_idMevcut oturum kimliğini yeni oluşturulan bir kimlikle güncelle
session_register_shutdownOturum kapatma işlevi
session_registerGeçerli oturumla bir veya daha fazla genel değişkeni kaydedin
session_resetOturum dizisini orijinal değerlerle yeniden başlatın
session_save_pathGeçerli oturum kaydetme yolunu al ve/veya ayarla
session_set_cookie_paramsOturum çerez parametrelerini ayarlayın
session_set_save_handlerKullanıcı düzeyinde oturum depolama işlevlerini ayarlar
session_startYeni bir oturum başlatın veya mevcut oturumu sürdürün
session_statusGeçerli oturum durumunu döndürür
session_unregisterGeçerli oturumdan küresel bir değişkeni kayıttan kaldırın
session_unsetTüm oturum değişkenlerini serbest bırak
session_write_closeOturum verilerini yaz ve oturumu sonlandır

Örnek

Aşağıdaki PHP betiği bir HTML formu oluşturur. Form verileri üç oturum değişkeni oluşturmak için kullanılır. Bir köprü metni tarayıcıyı oturum değişkenlerini geri okuyan başka bir sayfaya götürür.

Bu kodu "test.php" olarak belge kök klasörüne kaydedin ve bir istemci tarayıcısında açın. Verileri girin ve Gönder düğmesine basın.

HTML:
<html>
<body>
   <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
      <h3>User's ID: <input type="text" name="ID"/></h3>
      <h3>Your Name: <input type="text" name="name"/></h3>
      <h3>Enter Age: <input type="text" name="age"/></h3>
      <input type="submit" value="Submit"/>
   </form>
   <?php
      session_start();
      if ($_SERVER["REQUEST_METHOD"] == "POST") {
         $_SESSION['UserID'] = $_POST['ID'];
         $_SESSION['Name'] = $_POST['name'];
         $_SESSION['age'] = $_POST['age'];
      }
      echo "Following Session Variables Created: \n";

      foreach ($_SESSION as $key=>$val)
      echo "<h3>" . $key . "=>" . $val . "</h3>";
      echo "<br/>" . '<a href="hello.php">Click Here</a>';
   ?>
</body>
</html>

"Gönder" butonuna tıkladığınızda, oluşturulan tüm oturum değişkenlerinin bir listesi gösterilecektir.

oie_cEOsu5NGhRk5.gif

Daha sonra "hello.php" dosyasına aşağıdaki scripti ekleyip kaydedin.

PHP:
<?php
session_start();
   echo "<h2>Following Session variables Read:</h2>";
   foreach ($_SESSION as $key=>$val)
   echo "<h3>" . $key . "=>" . $val . "</h3>";
?>

Şimdi, "hello.php"ye gitmek için "test.php" sayfasındaki bağlantıyı takip edin. Okunan oturum değişkenlerini gösterecektir.

php_$_session_2.jpg
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst