Logowanie a wyczyszczenie ciasteczek?


(arlid) #1

Witam. Zastanawia mnie jedna kwestia. mianowicie jak to jest z usunięciem ciasteczek jak jesteśmy zalogowani np. na DP. Jak się wyczyści historię i ciasteczka w trakcie pobytu na stronie (i bycia zalogowanemu) po odświeżeniu strony już zalogowani nie jesteśmy. Mam więc pytanie, czy zostaliśmy wylogowani "poprawnie" i nie mamy połączenia z baza itd. czy jesteśmy nadal "zalogowani", lecz tak jakby potajemnie, jakby to powiedzieć - pod powłoką - na stronie nie możemy nic robić, pisać, itd., nie widzimy zalogowania (widoczny przycisk zaloguje), a mamy połączenie z baza jak byśmy byli zalogowani. Jak to jest? Czy tak jest z każdym serwisem np. allegro, poczta itp.?? Byłbym wdzięczny za wyjaśnienie.


(kostek135) #2

Po pierwsze przeglądarka (my) nie nawiązuje żadnych połączeń z bazą. Działa to mniej więcej tak:

1) logujesz się (zostaje ci ustawione ciasteczko).

2) Protokół HTTP jest bezstanowy, co za tym idzie nie zapamiętuje informacji, ale można odpytać przeglądarkę o ciastko.

3) Na tej podstawie po odświeżeniu można przywrócić stany sprzed odświeżenia. Przykładowo jeżeli ciastko istnieje, pobieramy jego zawartość która pomoże nam zidentyfikować użytkownika, który uprzednio był zalogowany. Dopiero wtedy serwer (nie przeglądarka! !!

4) Potem dane wykonane przez interpreter PHP zostają w formie tekstowej przesłane do przeglądarki, gdzie interpretuje to wszystko właśnie przeglądarka (serwer właściwie nic nie wie o HTML dla niego to tekst).

5) "Pod powłoką" zalogowani być nie możemy, bo każde zakończenie wykonania skryptu, tudzież mysql_close() zamyka połączenie serwera z bazą danych.

Dodam jeszcze, że zalogowanie to absolutnie nie jest stan ciągły, tylko dzięki ciasteczku użytkownikowi wydaje się, że jest. Usunięcie ciastka sprawia to samo co wylogowanie (bo na tym polega wylogowanie).


(arlid) #3

kostek135 , no profeska w każdym calu. Czyli tak jak myślałem, usunięcie ciasteczka wylogowuje Cię ze strony. Dzięki, teraz już bardziej to rozumiem po tym co napisałeś.


(Wszerad91) #4

Kiedyś w odnośnikach na stronie dodawano też numer SSID, przykładowo jakiśadres.pl?ssid=3883439858336 dzięki czemu można było rozpoznać użytkownika. Możliwe, że na Ogame.pl nadal tak jest. Ma to jedną poważną wadę, jeżeli wyślesz komuś link to przejmie twoją sesje.