Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Sesje, Problemy ze zrozumieniem jej działania
naj
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 23.10.2009

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


Dobry wieczór,

mam nadzieję, że znajdzie się użytkownik zechcący odpowiedzieć na moje prosto-głupie pytanie. A jest to pytanie straszne: do czego służy sesja? Jak ją wykorzystać?
Użytkownik mi się zalogował za pomocą swojego loginu i hasła i żeby poszczególne strony, na które klika "wiedziały", że to on - należy wykorzystać sesję. Ale jaki dokładnie jest mechanizm wykorzystania sesji? Z góry dziękuję za odpowiedź.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
InosU31
post
Post #2





Grupa: Zarejestrowani
Postów: 221
Pomógł: 14
Dołączył: 11.03.2009
Skąd: Lubaczów

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


Sesja dziala do momentu zamkniecia przegladarki - czyli jak zamkniesz badz zniszcysz sesje to przy ponownym uruchomieniu strony dostaniesz nowy identyfikator.

Logujesz sie na strone i podajac login i haslo skrypt szuka cie w bazie danych czy taki user i haslo sie zgadzaja. Jesli tak to mozesz zrobic tak :

Logiujesz sie i podczas logowania dajesz : session_regenerate_id() - wtedy zmienia ci sie id sesji. nastepnie zapisujesz to id sesji do bazy (mozesz dodatkowo sie zabezpoieczyc i wrzucic do bazy ip oraz przegladarke jakiej uzywasz w danym czasie) - najlepiej w osobnej tabeli ktora ma tymczasowe dane - czyli takie ktore sie skasuja po wylogowaniu - pamietaj aby dac po wylogowaniu session_destroy().

druga tabelka moze wygladac tak :
id, id_usera, id_sesji, ip_usera, przeglagarka

Robisz osobny skrypt ktory dolaczysz do kazdej podstrony a w nim np:

  1. // pobierasz dane z bazy gdzie id_usera z tabeli user = id_usera z tabeli tym_sesje - ip, przegladarka, id_sesji
  2.  
  3. if ($_SERVER['REMOTE_ADDR'] == $ip_z_bazy && $[i]_SERVER[/i]['HTTP_USER_AGENT'] == $przegladarka && session_id() == $id_z_bazy)
  4. {
  5. echo "wszystko ok";
  6. return true;
  7. }
  8. else
  9. {
  10. echo "Nie masz uprawnien do ogladania tej strony!";
  11. return false;
  12. }


mniej wiecej tak to wyglada - sory jesli cos zle napisalem ale dawno robilem te sesje:/

Pozdrawiam
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: 12.10.2025 - 15:06