Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Utrzymanie sesji
Lirdoner
post
Post #1





Grupa: Zarejestrowani
Postów: 500
Pomógł: 1
Dołączył: 29.09.2009

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


Witam, gdy użytkownik się loguje to $_SESSION['liczba'] = 0 a gdy wejdzie na jedną z podstron to wtedy $_SESSION['liczba'] = 1
Co zrobić aby po zalogowaniu się user w $_SESSION['liczba'] miał już nie 0 tylko 1?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Hellelujah
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 4.06.2009

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


Rozumiem, że chcesz przechować na serwerze jakieś dane pomiędzy sesjami (logowaniami)? W takim wypadku musisz je zapisać w bazie danych albo pliku tekstowym. Skoro mówisz o logowaniu, to pewnie bazę danych już masz - dalszy sposób postępowania zależy od tego, jaka to baza i jak sie z nią łączysz.

Musisz też pamiętać, że sesja php sama w sobie nie jest powiązana z "sesją" jako okresem między zalogowaniem a wylogowaniem. Sesja to tylko takie narzędzie, dzięki któremu serwer przez kilka minut pamięta, że z danym komputerem już się łączył, i odróżnia go od innych. Po tych kilku minutach sesja wygasa i wszystkie dane z $_SESSION przepadają.


--------------------
Hellelujah - not a holy man ]:->
Go to the top of the page
+Quote Post
adam83
post
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 2.11.2009

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


jeśli mogę dołączyć swoje pytanie do pytania kolegi...
W jakim przypadku zmienne sesji zginą? Napewno jeśli je usuniemy, jeśli zniszczymy istniejącą sesję, a inne przypadki? np jesli user zamknie przegladarkę albo skoczy odsyłaczem do innej lokalizacji?
Go to the top of the page
+Quote Post
Hellelujah
post
Post #4





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 4.06.2009

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


Sesja działa w ten sposób, że każe przeglądarce stworzyć ciasteczko zawierające ID sesji (numer, po którym serwer rozpozna nasz komputer). Następnie przy każdym kolejnym zapytaniu (połączeniu z serwerem) nasz komputer jest rozpoznawalny, "podpisany" swoim ID. Sesja pozostanie aktywna, dopóki serwer będzie przechowywał jej dane (gdzieś w konfiguracji php można ustawić długość tego okresu), a jednocześnie przeglądarka może się do niej dostać, dopóki może się "przedstawić", czyli dopóki istnieje casteczko sesyjne. Co z tego wynika? Ciacho ma ważność do chwili zamknięcia przeglądarki, więc po zamknięciu nasz komputer staje się dla serwera "bezimienny", ale sesja na serwerze może nadal istnieć (to ważny szczegół - ktoś, kto ukradnie ID, może się podszyć). Przy kliknięciu linka ciasteczko nie jest ruszane, więc sesja przetrwa do chwili wygaśnięcia na serwerze.


--------------------
Hellelujah - not a holy man ]:->
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 - 06:30