- Katılım
- 2 Mar 2015
- Konular
- 59,185
- Mesajlar
- 88,376
- Online süresi
- 4ay 14g
- Reaksiyon Skoru
- 14,227
- Altın Konu
- 2,398
- Başarım Puanı
- 1,051
- TM Yaşı
- 11 Yıl 1 Ay 21 Gün
- MmoLira
- 694,336
- DevLira
- 234
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Bir web oturumu, bir kullanıcının bir sunucuyla bağlantı kurması ile bağlantının sonlandırılması arasındaki zaman dilimidir. Çerezlerle birlikte, oturum değişkenleri verileri bir web sitesinin çeşitli sayfalarında erişilebilir hale getirir.
Bir oturum sırasında, web sitesi kullanıcının eylemleri ve tercihleri hakkında bilgi tutar. Oturum verileri, süper küresel bir ilişkisel dizi $_SESSION içinde doldurulur.
PHP'de yeni bir oturum başlatmak için session_start() fonksiyonunu çağırmanız gerekir.
Bu fonksiyon, bir oturum başarıyla başlatılmışsa true , aksi takdirde false değerini döndürür.
PHP ilk olarak o oturum için benzersiz bir tanımlayıcı oluşturur; bu tanımlayıcı 32 adet onaltılık sayıdan oluşan rastgele bir dizedir.
session_id () fonksiyonu benzersiz bir oturum kimliği ayarlar veya alır.
PHP, $id parametresi verilmezse rastgele bir oturum kimliği üretecektir . Bunun yerine kendi kimliğinizi belirtebilirsiniz. İşlev, geçerli oturum için oturum kimliğini veya geçerli bir oturum yoksa boş dizeyi döndürür. Başarısızlık durumunda, false döndürür.
Tarayıcı çıktı olarak rastgele bir dize gösterecektir.
Kullanıcının bilgisayarına PHPSESSID adında bir çerez otomatik olarak gönderilir ve benzersiz oturum tanımlama dizesi depolanı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.
Geçici dosyanın konumu "php.ini" dosyasındaki "session.save_path" adlı bir ayarla belirlenir.
Yeni bir oturum değişkeni oluşturmak için $_SESSION dizisine bir anahtar-değer çifti ekleyin.
Bir oturum değişkeninin değerini geri okumak için echo/print ifadelerini veya var_dump() veya print_r() fonksiyonlarını kullanabilirsiniz.
Mevcut oturumdaki tüm oturum değişkenlerinin listesini elde etmek için, $_SESSION'ı dolaşmak üzere bir foreach döngüsü kullanabilirsiniz.
Bir oturum değişkeninin önceden ayarlanıp ayarlanmadığını kontrol etmek için isset() fonksiyonunu kullanın.
Aşağıdaki PHP betiği ilk kez çalıştığında bir oturum başlatır ve counter adlı bir oturum değişkeni ayarlar. İstemci aynı URL'yi tekrar ziyaret ettiğinde, oturum değişkeni zaten ayarlandığı için counter artırılır.
Tekrarlanan ziyaretleri simüle etmek için tarayıcıyı birden çok kez yenileyin. Tarayıcı sayacı görüntüler.
İşte tek bir değişkenin ayarını kaldırmaya yönelik bir örnek:
İşte tüm oturum değişkenlerini yok edecek çağrı:
Php.ini dosyanızda session.auto_start değişkenini 1 olarak ayarlarsanız, bir kullanıcı sitenizi ziyaret ettiğinde bir oturum başlatmak için start_session() fonksiyonunu çağırmanıza gerek kalmaz.
Bu kodu "hello.php" olarak belge kök klasörüne kaydedin ve istemci tarayıcısında açın.
Gönder düğmesine basın. Tarayıcı oluşturulan oturum değişkenlerini gösterecektir.
Tarayıcı gösterilen bağlantıyı takip ederek başka bir sayfaya gider. Oturum değişkenlerini geri okur.
Bir oturum sırasında, web sitesi kullanıcının eylemleri ve tercihleri hakkında bilgi tutar. Oturum verileri, süper küresel bir ilişkisel dizi $_SESSION içinde doldurulur.
PHP'de yeni bir oturum başlatmak için session_start() fonksiyonunu çağırmanız gerekir.
Bir Oturum Başlatma
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 , aksi takdirde false değerini döndürür.
PHP ilk olarak o oturum için benzersiz bir tanımlayıcı oluşturur; bu tanımlayıcı 32 adet onaltılık sayıdan oluşan rastgele bir dizedir.
session_id () fonksiyonu benzersiz bir oturum kimliği ayarlar veya alır.
session_id(?string $id = null): string|false
PHP, $id parametresi verilmezse rastgele bir oturum kimliği üretecektir . Bunun yerine kendi kimliğinizi belirtebilirsiniz. İşlev, geçerli oturum için oturum kimliğini veya geçerli bir oturum yoksa boş dizeyi döndürür. Başarısızlık durumunda, false döndürür.
Örnek
Aşağıdaki örneğe bir göz atın.
PHP:
<?php
// Starting the session
session_start();
$id = session_id();
echo "Session Id: ".$id ;
?>
Tarayıcı çıktı olarak rastgele bir dize gösterecektir.
Session Id: mi3976f8ssethe9f04vq1ag6it
Kullanıcının bilgisayarına PHPSESSID adında bir çerez otomatik olarak gönderilir ve benzersiz oturum tanımlama dizesi depolanır.
Geçici dosyanın konumu "php.ini" dosyasındaki "session.save_path" adlı bir ayarla belirlenir.
Oturum Değişkenlerini İşleme
Oturum değişkenleri $_SESSION[] adlı ilişkisel dizide saklanır. Bu değişkenlere bir oturumun ömrü boyunca erişilebilir.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;
Örnek
Aşağıdaki örnek bir oturum başlatır ve ardından oturum sırasında sayfa her ziyaret edildiğinde artan counter adlı bir değişkeni kaydeder.Bir oturum değişkeninin önceden ayarlanıp ayarlanmadığını kontrol etmek için isset() fonksiyonunu kullanın.
Aşağıdaki PHP betiği ilk kez çalıştığında bir oturum başlatır ve counter adlı bir oturum değişkeni ayarlar. İstemci aynı URL'yi tekrar ziyaret ettiğinde, oturum değişkeni zaten ayarlandığı için counter artırılır.
PHP:
<?php
session_start();
if( isset( $_SESSION['counter'] ) ) {
$_SESSION['counter'] += 1;
} else {
$_SESSION['counter'] = 1;
}
$msg = "Number of visits in this session: ". $_SESSION['counter'];
?>
<?php
echo "$msg";
?>
Tekrarlanan ziyaretleri simüle etmek için tarayıcıyı birden çok kez yenileyin. Tarayıcı sayacı görüntüler.
Number of visits in this session: 5
Bir PHP Oturumunu Yok Etme
Bir PHP oturumu session_destroy() fonksiyonu ile yok edilebilir. Bu fonksiyon herhangi bir argümana ihtiyaç duymaz ve tek bir çağrı tüm oturum değişkenlerini yok edebilir. Tek bir oturum değişkenini yok etmek istiyorsanız, bir oturum değişkenini kaldırmak için unset() fonksiyonunu kullanabilirsiniz.İşte tek bir değişkenin ayarını kaldırmaya yönelik bir örnek:
PHP:
<?php
unset($_SESSION['counter']);
?>
İşte tüm oturum değişkenlerini yok edecek çağrı:
PHP:
<?php
session_destroy();
?>
Php.ini dosyanızda session.auto_start değişkenini 1 olarak ayarlarsanız, bir kullanıcı sitenizi ziyaret ettiğinde bir oturum başlatmak için start_session() fonksiyonunu çağırmanıza gerek kalmaz.
Ö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.
HTML:
<html>
<body>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<h3>User's ID: <input type="text" name="ID"/></h3>
<h3>User's Name: <input type="text" name="name"/></h3>
<h3>User Type: <input type="text" name="type"/></h3>
<input type="submit" value="Submit" />
</form>
<?php
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$_SESSION['ID'] = $_POST['ID'];
$_SESSION['Name'] = $_POST['name'];
$_SESSION['type'] = $_POST['type'];
echo "<h2>Following Session variables Created</h2>";
foreach ($_SESSION as $key=>$val) {
echo "<h3>" . $key . "=>" . $val . "</h3>";
}
echo "<a href='test.php'><b>Click Here</b></a>";
}
?>
</body>
</html>
Bu kodu "hello.php" olarak belge kök klasörüne kaydedin ve istemci tarayıcısında açın.

