PHP çoklu tek-kullanıcı oturumları Taşıma

2 Cevap php

Geçenlerde PHP 1 hesabınızı kullanarak birden fazla oturum simüle. İşte ne yaptım

  1. 2 giriş ekranları açıldı
  2. İlk giriş ekranı kullanılarak dikkate 1 içine giriş
  3. Başarılı giriş
  4. İkinci oturum açma ekranını kullanarak hesabınıza 2 oturum

Ne yapmak istediğiniz kullanıcı 2 aynı makine ve aynı tarayıcı üzerinde açtığında kullanıcı 1 çıkış etmektir.

Bunu nasıl yapabilirim? Ben de Gmail ve e-posta 1 2 günlükleri ve e-posta açtıysa, Gmail bu kullanıcı 1 Ben aynı makineyi kullanarak ve oturum varsayarak (dışarı kaydedilir söyleyerek bir uyarı kutusu görüntüler ile yaptı Aynı tarayıcı).

2 Cevap

Eğer tasarruf iseniz sessions (ki ilgili herhangi bir inadı veri varsa gerekir) sadece diğer kullanıcı oturum olup olmadığını kontrol edin ve silin.

GÜNCELLEME:

Ben en azından benim için aynı çalışma değil, bu Gmail yaklaşım olduğunu sanmıyorum. Ben 2 Gmail giriş sekmeleri (aynı tarayıcı, belirtildiği gibi aynı oturumu) açmak ve sorunsuz her ikisi de kimlik doğrulaması yapabilir. Kesinlikle her iki bağlantı Gmail hesabı faaliyeti görünür, ancak kötü niyetli bir aktivite olarak görüyorlar değil farklı bir bilgisayarda eğer, sadece çıkartılmamış olacak.

Eğer kalıcı bir bağlantısı kullanarak değil sadece, çünkü gerçekten, aynı tarayıcı ve aynı oturumu kullanan kullanıcılar arasında ayrım yapamaz, bu web doğanın.

Tarihi, tarayıcı oturumu, ip, bir şey: Sen bunları ayırt etmek bir şey gerekir. Eğer sahip tek seçenek bunlardan herhangi giriş yaptığında bir zaman damgası kullanılarak gibi görünüyor, ama bu oldukça zor, ve ben bunu önermiyoruz.

O aynı tarayıcı (Tamam, kötü bir şakaydı) aynı giriş kullanmak çalışıyor eğer USER 2 şaplak USER 1 önerecektir.

Tüm kullanıcılar için aynı çerez ayarlarsanız, periyodik olarak bu çerez ile ilişkili kullanıcı adı / veri olarak başlangıçta sayfasında oturum aynı biri olduğunu kontrol etmek için javascript kullanabilirsiniz.

Eğer bir değişiklik görürseniz, haber açılır ve uzak sayfadan gidin.

Kesinlikle bu doğrulamak zorunda, ayrıca, her bir post / almak isteği ile amaçlanan kullanıcı göndermek olabilir, çerez ek olarak, daha sonra çerez kullanıcıyı eşleştiğini doğrulamak. Bu olsa sorunlarının diğer türlü neden olur, bu yüzden muhtemelen overkill.