Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> System logowania - pytania
tukan
post
Post #1





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 19.06.2011

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


Witam,
mam parę pytań odnośnie systemu logowania:
1. Jeśli ktoś nie zaznacza opcji loguj automatycznie to nie ma problemu, jadę na zwykłej sesji ( dobrze myślę?)
2. I jeśli ktoś zaznacza autologowanie to jak mam to organizować?
a) myślę o cookies, ale jak ktoś ma wyłączoną obsługę to jak go autologować?
(IMG:style_emoticons/default/cool.gif) jeśli na cookies, to co mam w nich zapisywać i czy to jakoś szyfrować?
3. Jak ktoś jest autologowany, ale po jakimś czasie kliknie wyloguj, to czy mam zaimplementować to tak, że: sprawdzam czy są cookie dotyczące autologwania, a następnie (jeśli są) to usuwam je(czy jakoś unieważniam) <- dobrze myślę?
4. Czytałem już o tym w książce, ale może istnieje jeszcze jakiś dobry opis systemu logowania w internecie?

Ten post edytował tukan 23.06.2011, 20:32:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


user zaznacza checkboxa "zapamiętaj mnie"
checkbox ma name="remember"

w skrypcie php robisz:
  1. if($_POST['remember'] == 'on')
  2. {
  3. $token = rand(1000,9999);//dużo lepiej było by losować ciąg długi na 32 znaków zawierający litery duże i małe i cyfry, ale to ma być tylko przykład.
  4. mysql_query('UPDATE `users` SET token='. $token . ' WHERE id=' . $id);//to id, to id usera które wcześniej musisz pobrać.. zakładam, że to dla ciebie jasne
  5. set_cookie(...);//tutaj ustawiasz ciasteczko z tokenem, nie pamiętam kolejności parametrów bo niezbyt często tego używam.
  6. }


Jak ma wyglądać tabela pewnie sobie poradzisz

jeśli user jest niezalogowany (brak sesji), to musisz sprawdzić, czy dany user nie zaarzyczył sobie żeby go zalogować.
musisz odczytać cookie. wykonać zapytanie
  1. mysql_query('select id from users where token='. $token_z_ciastka);//oczywiscie musisz filtrowac dane wchodzące

jeśli num_rows==1 to logujesz go (IMG:style_emoticons/default/smile.gif)

Ten post edytował peter13135 23.06.2011, 21:25:43
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: 9.10.2025 - 11:54