Cookie ve aktif "beni hatırla"

4 Cevap php

Ben bu yüzden bir "remember me" özelliği için bir kullanım görmedim herhangi bir süre için giriş yapmış kalmak için bir kullanıcıya izin vermek istemedim. Ben olsa bitti ve bazı açıklama istiyorum nasıl düşünmeye başladım.

Ben şu anda bir veritabanında benim oturumları saklamak ediyorum. Ne zaman beni çapraşık olan Ben açıkça bir çerez ayarlamak yok olsa bile, biri benim tarayıcıda nasıl yerleştirileceğini oldu. Bir oturum bir oturum ve bir çerez çerez çünkü ben biraz kafam karıştı. Ben bir oturum bir çerez nasıl görmüyorum.

Ben de sadece, oturum açmış kullanıcı tutmak için yeterli olacaktır ya da ben hala bir çerez ayarlamak gerekir oturum dizisindeki başka bir oturum değişkeni ayarı, eğer bilmek istiyorum?

4 Cevap

Ne zaman beni çapraşık olan Ben açıkça bir çerez ayarlamak yok olsa bile, biri benim tarayıcıda nasıl yerleştirileceğini oldu.

Bir oturum işleyici hangi kullanıcıya ait olduğu oturum belirlemek zorundadır.

Oturum kütüphanelerin büyük çoğunluğu bir çerez ayarlayarak bunu.

(Is) kullanıcı tutmak için oturum dizisindeki başka bir oturum değişkeni ayarı yapman yeterli olacaktır ya da ben hala bir çerez ayarlamak gerekir?

Çoğu seans kütüphaneler kümesi session cookies. Bunlar belirli bir süre sonu olmadan tanımlama vardır. Onlar tarayıcı kapandığında sona erecek ve bir özellik "Beni hatırla" (tarayıcı yeniden başlatıldıktan genelinde devam edeceği, hangi nedenle açık bir son kullanma süresi olmalıdır) uygulamak için yeterli değildir.

Geri veritabanından oturum verilerini çekmek için önemli bir ihtiyaç vardır. Bu Session ID denir.

Oturum kimliği yerde saklanması gereken. URL dizesi bir parçası olarak, istemci ileti istemci üzerinde bir tanımlama, daha yaygın, yedeklemek veya Ya o. Isteği gönderildi olduğunda, oturum çerezi gelen değeri okur ve geri oturumu depolama çekmek için hangi kayıt bilir.

Bu otomatik olarak gerçekleşir.

Saklamak istediğiniz veri 4KB (tarayıcı sınırlamaları) büyükse oturumu kullanmak için tek nedeni; veya sunucudan veri çekmek için gerekli süre oturumu depolama onu okumaktan daha büyükse.

Depoladığınız veri miktarının 4KB'a az ise ben son derece size sadece başlamak için çerez olduğunu ayarlayabilirsiniz öneriyoruz. Ben genellikle kullanıcı kimliği, kullanıcı adı, ve birkaç diğer nitelikleri gibi şeyler saklamak. Bir tanımlama değerini incelemek için önemsiz olduğunu, bu nedenle bu bilgiler önceden müşteriye gidiyor şifreli gerektiğini unutmayın.

Başka bir şey, orijinal kaynaktan ihtiyaç veri çekmek için sorgu zaman küçük ise, o zaman yerine oturumda yerleştirme yapmak için tercih olduğunu. Aslında her sayfa yük ile yerine ihtiyacınız olduğunda sadece o olsun bu şekilde.

Cookie ve Session arasındaki ilişkiyi açıklayan:

PHP benzersiz her kullanıcı için oturum tanımlamak için Cookie kullanır. Çerez sunucudan bir dosya talep her zaman gönderildiği çünkü sadece daha güvenilir yoludur. Ayrıca Oturum tanımlayıcı olan çerez, belirteci kullanarak, PHP oturum olup olmadığını görmek için tmp dizin yukarı bakacaktır. Oturum varsa, değişkenleri doğru dosyasından yüklenir ve o oturumdaki değişkenleri erişmek mümkün olacak.

Bu nedenle, çerezler hangi oturumu kullanan kullanıcı tanımlamak için gerekli oturum tanımlayıcı depolamak. Bu insanların başka bir kişinin oturum kimliği kullanmak için oturum belirlenmesi tanımlama değiştirebilirsiniz zaman Oturum Kaçırma, gelmek nasıl aynı zamanda.

Yatan PHP oturum uygulama çerez bırakır. Bunu değiştirebilir ve sorgu dizesi geçirilen oturum ID değeri var, ama ben bunu tavsiye etmiyoruz edebilir. Sen çerez kullanmak istemiyorum, PHP yapar. Bu oturum verilerine aramaları gerçekleştirmek için çerez saklanan oturum ID değerini başvuruyor.

Sadece yeterli olacaktır ya da ben hala bir çerez ayarlamak gerekir oturum açmış kullanıcı tutmak için oturum dizisindeki başka bir oturum değişkeni ayarı varsa ben de bilmek istiyorum?

En kısa sürede kullanıcı tarayıcıyı kapatır gibi, oturum öldürdü ve çerez silinir. Ben herhangi bir mekanizma oturum değerini kalıcı çıkar inanıyorum, ve iyi bir nedenle yok.