Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak zmienić ID Sesji?
ZaqU
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 21.01.2013

Ostrzeżenie: (0%)
-----


Problem banalny. Muszę zmienić ID sesji na wartość zapisaną w ciasteczku.

  1. echo 'Przed: '.session_id();
  2.  
  3. if( isset($_COOKIE['sessionID']) && $_COOKIE['sessionID'] != session_id() ) {
  4. session_id($_COOKIE['sessionID']);
  5. }
  6.  
  7. echo 'Po: '.session_id();


Do tego momentu wszystko jest super i działa. Przed przypisaniem identyfikator jest inny, po przypisaniu przyjmuje wartość z cookie. Problem pojawia się po odświeżeniu strony, gdyż ta zmiana nie jest trwała i session_id() powraca do swej domyślnej wartości.

Co zrobić, aby identyfikator sesji zmieniał się na stałe?

Ten post edytował ZaqU 1.04.2013, 01:04:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ZaqU
post
Post #2





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 21.01.2013

Ostrzeżenie: (0%)
-----


Dzięki za odpowiedzi!

W sumie podoba mi się sposób ssstrz'a, bo jest prosty i to tylko dwie linijki więcej w moim kodzie.

Michael2318, hmm.. czy ja wiem? Za dużo roboty miałbym ze zmienianiem id sesji na nowe. Nowe ciastko, aktualizacja w bazie danych... A bezpieczeństwo chyba na tym nie utraci, bo i tak sprawdzam z każdym odświeżeniem strony czy IP i przeglądarka klienta zgadza się z tym co jest zapisane w $_SESSION['IPKlienta'] oraz $_SESSION['AgentKlienta'] (wszystko za pierwszym razem pobierane z bazy). Jeśli nie, to sesja jest niszczona, a odpowiedni rekord z bazy kasowany i trzeba się na nowo logować. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 06:14