Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z wylogowaniem
adif
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.06.2005

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


Witam wszystkich...

problem jest następujący...
zrobiłem w swoim projekcie logowanie użytkowników na sesjach. W momencie logowania gdy dane wpisane w formularzu zgadzaja się z tymi pobranymi z bazy danych tworze zmienną sesyjną

$_SESSION['user'] = $login;

następnie za każdym razem sprawdzam czy użytkownik jest zalogowany:
----------
function log_uzyt()
{
global $_SESSION;
if (isset($_SESSION['user']))
return true;
else
return false;
}
----------------
I wszystko niby jest pięknie do momentu wylogowywania użytkownika co robie w następujący sposób:

unset($_SESSION['user']);
session_destroy();

Po wywołaniu tych poleceń pokazuje mi że użytkownik rzeczywiście jest wylogowany ale:

kiedy daje w przeglądarce <<cofnij ponownie zaczynaja być wysyłane dane z formularza i użytkownik jest automatycznie zalogowany ponownie co nie powinno mieć miejsca.

Podsumowując co należy zrobić aby zabezpieczyć przed ponownym wysłaniem danych z formularza lub po prostu ktoś ma pomysł jak dobrze zrealizować wylogowanie użytkownika żeby nie było pod żadnym pozorem możliwosci nieautoryzowanego zalogowania??

wielkie dzięki z góry
Go to the top of the page
+Quote Post
dasko
post
Post #2





Grupa: Zarejestrowani
Postów: 179
Pomógł: 0
Dołączył: 9.11.2004

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


Cytat
It took me some time to figure this out:
If you have register globals off, you probably use $_SESSION to acces you session vars. If you want clear a sessionvar inside the current script, but also in next pages, do this as follows:

session_unregister('varname');

Otherwise varname will keep returning either inside the script, or on the next pages.

unset($_SESSION['varname']) will only unset the session var on the current page.

To notka z manuala. Zawsze warto je czytać smile.gif
Go to the top of the page
+Quote Post
adif
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.06.2005

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


rzecz jest niestety w tym że zmienna sesji jest usuwana i na kolejnych podstronach użytkownik jest wylogowany tak jak chciałem, ale kiedy np:

nie wyłącze okna przegladarki i odejdę od kompa i kiedy podejdzie nowa osoba i zacznie uporczywie klikać <<wstecz w przeglądarce to w pewnym momencie przegladarka dojdzie do miejsca gdzie poprzednio się logowałem i wtedy prześle dane z formularza sama i automatycznie zaloguje kogoś z danymi wpisanymi przy poprzednim logowaniu
Go to the top of the page
+Quote Post
NuLL
post
Post #4





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Po pierwszym logowaniu można dopisać do danych sesyjnych że formularz wysłano i późiej sprawdzać to zmienną.


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
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: 20.08.2025 - 08:58