Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Generacja identyfikatora sesji
Cliassi
post
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 0
Dołączył: 29.04.2012

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


Witam, mam problem z funkcją session_regenerate_id(true). gdy niej korzystam system odrazu gubi "wylogowuje". Moje pytanie jest nastepujące do czego sluzy kod
  1. $_SESSION['costam']=true;
? widziałem w internecie taki kod
  1. if (!isset($_SESSION['inicjuj']))
  2. {
  3. $_SESSION['inicjuj'] = true;
  4. }
ale nie wiem jak on działa. bo po co generować nowe id jesli sesji nie ma ? i zamiast "inicjuj" wpisuje np "user_id" tak ?

oraz jak regenerować ID sesji co np 3 minuty a nie za każdym wywołaniem strony ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
kajtek2008
post
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 15.08.2009
Skąd: Nowy Sącz

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


  1. $session=session_id();


Ten post edytował kajtek2008 9.09.2012, 15:10:02
Go to the top of the page
+Quote Post
mrWodoo
post
Post #3





Grupa: Zarejestrowani
Postów: 160
Pomógł: 6
Dołączył: 13.01.2012
Skąd: Bytom

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


session_start = tworzenie sesji
session_regenerate_id 'przeniesie' dane sesji o ID x do nowej sesji o id Y

Robi się to po to, żeby zapobieć atakom kradzieży sesji np poprzez masowe sprawdzanie identyfikatorów.


--------------------
Go to the top of the page
+Quote Post
Cliassi
post
Post #4





Grupa: Zarejestrowani
Postów: 142
Pomógł: 0
Dołączył: 29.04.2012

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


wiem do czego sluzy session_regenerate_id(); tylko jak tego używam to mnie wylogowuje.tzn id sesji sie zmienia ale dane uciekają

i jak zmienić szyfrowanie ID sesji ? bo domyslnie jest md5? chciałbym np na sha256 lub 512
Go to the top of the page
+Quote Post
pamil
post
Post #5





Grupa: Zarejestrowani
Postów: 97
Pomógł: 15
Dołączył: 12.08.2012
Skąd: Zabrze

Ostrzeżenie: (10%)
X----


Manual.
Go to the top of the page
+Quote Post
Cliassi
post
Post #6





Grupa: Zarejestrowani
Postów: 142
Pomógł: 0
Dołączył: 29.04.2012

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


ale dlaczego gdy zmieniam ID sesji to gubi dane ?
Go to the top of the page
+Quote Post
modern-web
post
Post #7





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

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


W nawiasie dałeś parametr "true" -> kasujesz stary plik sesji i tworzysz nowy, w ten sposób nie zaśmiecasz serwera starymi sesjami, które dopiero po X czasie są automatycznie usuwane.
Wystarczy, że zrobisz session_regenerate_id() a powinno zadziałać smile.gif
Kolejność wykonywania tych operacji jest pod znakiem zapytania, czasem zdarza się że stary plik sesji zostanie usunięty zanim utworzy się nowy - dlatego Cię wylogowuje, bo to tak jakbyś użył session_destroy()

Pozdrawiam!

Ten post edytował modern-web 13.09.2012, 13:54:57


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 05:23