![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 201 Pomógł: 5 Dołączył: 15.07.2008 Skąd: Kłodzko Ostrzeżenie: (10%) ![]() ![]() |
Napisałem prosty system logowania oparty na 3 plikach index.php (dla gościa: formularz logowania, dla użytkownika: możliwość wylogowania), zalogowanie.php i wylogowanie.php.
I w związku z tym mam kilka pytań: 1. Jak zrobić takie logowanie jak na tym forum. Co na nie wejdę to jestem zalogowany. 2. Jak zrobić time outy? 3. Jak zrobić listę zalogowanych użytkowników (uwzględniając time outy itp.)? Pliki: index.php:
zalogowanie.php:
wylogowanie.php:
Proszę o odpowiedzi na wcześniej zadane pytania i sugestie dotyczące mojego systemu logowania. PS: Może połączyć kody plików zalogowanie.php i wylogowanie.php? Tylko niewiem jak nazwać plik z połączonym kodem? -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 37 Dołączył: 1.05.2008 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Musisz ustawić czas życia sesji :
Wrzucasz coś takiego do każdego pliku, jeśli istnieje ciasteczko z kluczem sesji to ustawiasz czas życia ciasteczka za pomocą session_set_cookie_params, odpalasz sesje i modyfikujesz ciasteczko tak aby data jego istnienia wynosiła 1 godzinę od chwili uruchomienia skryptu (date('U') + $time). Jeśli użytkownik nie uruchomi żadnego skryptu przez jedną godzinę to ciasteczko przestanie istnieć, nie będzie więc można wystartować sesji i użytkownik będzie musiał się zalogować jeszcze raz. Co do listy aktywnych użytkowników to możesz przy każdym wywołaniu skryptu wpisywać do bazy danych datę ostatniej aktywności użytkownika, potem pobierasz z bazy danych nazwy tylko tych użytkowników których data ostatniej aktywności jest nie większa niż 1h. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 201 Pomógł: 5 Dołączył: 15.07.2008 Skąd: Kłodzko Ostrzeżenie: (10%) ![]() ![]() |
a jak w takim wypadku wyglądał by kod pliku logowania?
![]() -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 37 Dołączył: 1.05.2008 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Przy wylogowaniu wystarczy ustawić czas życia ciasteczka na ujemny a sesja zostanie zniszczona:
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 201 Pomógł: 5 Dołączył: 15.07.2008 Skąd: Kłodzko Ostrzeżenie: (10%) ![]() ![]() |
a jak zrobić wieczne zalogowanie tak jak jest na tym forum??
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 2.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Czesto jak sie loguje na jakimś serwisie to mam w adresie parametr identyfikujacy mnie cos w stylu numer sesji albo jakis hash code. Po co sie to robi. Daje mi to jakies dodatkowe zabezpieczenie, nie mozna tego zrobić po prostu za pomoca sesji i już żadnych parametrow w adresie nie miec ?
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 37 Dołączył: 1.05.2008 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Logowanie oparte na cookies ma jedną wadę - użytkownik może je wyłączyć przez co nie będzie mógł się zalogować. Sposobem na przechowanie identyfikatora sesji bez potrzeby angażowania cookies jest właśnie doklejanie go do adresu.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
Berg
A bezpieczeństwo? ![]() |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 37 Dołączył: 1.05.2008 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Nie napisałem, że ten sposób jest bezpieczny, jeśli użytkownik podaje linka z takim identyfikatorem to praktycznie oddaje swoje konto innym. Dodatkowo dochodzi problem z time-outem i SEO. Dlatego ja rozwiązania z identyfikatorami w url nie stosuje, ostatecznie nikt normalny nie wyłącza cookies
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 05:07 |