PHP $ _SESSION Listesi

4 Cevap

Ben localhost.So gelen oturum listesini almak istiyorum, ben yazdım

session_start();
print_r($_SESSION);

Şu anda erişmek kişi two.one başka bir bilgisayardan ve sonuncusu session.Actually ben tüm oturum kullanıcı listesini almak istiyorum gösterilen sadece barındırılan pc pc.But barındırılan olduğunu.

4 Cevap

Bu kolayca aşağıdaki kodla yapılabilir:

<?php

$sessions = array();

$path = realpath(session_save_path());
$files = array_diff(scandir($path), array('.', '..'));

foreach ($files as $file)
{
    $sessions[$file] = unserialize(file_get_contents($path . '/' . $file));
}

echo '<pre>';
print_r($sessions);
echo '</pre>';

?>

Bu yaptığınızı (veya izin) olarak riskleri anlamak emin olun.

Oturum birbirinden izole edilir. Bir kullanıcının oturum başka bir kullanıcının oturumuna erişimi yok. Değişken $_SESSION başvuruları yalnızca geçerli kullanıcının oturumunu.

Ben oturum dosyaları fiziksel diskte nerede depolandığını bulmak ve bunları el ile ayrıştırma dışında farklı bir kullanıcının oturumunu erişmek için bir yol var sanmıyorum. NOTE THAT THIS IS NOT USUALLY SOMETHING YOU WANT TO DO.

Ben ne soran emin değilim, ama başka bir kullanıcı başka bir oturum almak için arıyor düşünüyorum. Bu durumda, o zaman ben bunu tavsiye etmem ve gerçekten mümkün değil. (Çerezler aracılığıyla aksi belirtilmedikçe) toplantıları her tarayıcı oturumuna bireyseldir.

Tekrar, sonra başka bir bilgisayardan kendi kullanıcı oturumları almak isteyen varsa, varsayılan oturum davranış gerçekten bunu yapmak için yapılmaz. Muhtemelen bir veritabanı kullanır ve hangi kullanıcı için (kullanıcı kimliği muhtemelen) oturumu olan izler, kendi oturum yöneticisini uygulamak gerekir bu nedenle başka bir bilgisayara yükleyebilirsiniz. Eğer demek başına, balmumu başka bütün topun içine alıyoruz çünkü ben de bunu tavsiye etmem.

Eğer kullanıcı giriş ve bilgisayarlar arasında veri takip tutmaya çalışıyorum, ben bir kullanıcı ayarları tablosunu kullanarak öneriyoruz. Burada kullanıcının sahip ayarlarını izlemek ve oturum yönetimini değiştirmek zorunda kalmadan onları her oturumu veya hatta her sayfa yük yükleyebilirsiniz.

Şu anda aktif oturumların bir listesini almak isteyen sizin başlığı ise, o zaman sadece bir tablodaki her kullanıcının son isabet zaman kayıt ve oturum inaktif düşündüğümüzde bir dizi vakit, bu verileri görüntüleyebilir.

getting the "ses_*" files from session_save_path is one option, but if these session files are at multi-level: http://www.php.net/manual/en/session.configuration.php#ini.session.save-path problems may arise.

En iyi (), ilk sütun (session_id olan olan bir mysql tablo güncellemek) her session_start sonra ve ikinci $ _SESSION tefrika veri