Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> cookies, a dane logowania
wezyrno
post
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 11.09.2011

Ostrzeżenie: (50%)
XXX--


Czy cookies może służyć, nie do zapamiętania logowania aby użytkownik nie musiał się ciągle logować, ale do zapamiętania danych logowania w polach formularzu? Ja wiem, że to robi przeglądarka za zgodą człowieka, ale czy można to zrobić w formie cookie (tzn. uzupełniać zawsze formularze)?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Brick
post
Post #2





Grupa: Zarejestrowani
Postów: 107
Pomógł: 9
Dołączył: 16.02.2004
Skąd: Kraków

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


Opcja "zapamiętaj mnie" polega na tym że w pliku cookie zapisujesz dłuższy czas jego ważności, np 3 miesiące lub rok
  1. if ($remember==1) //użytkownik zaznaczył "zapamiętaj mnie"
  2. $time = time() + 60*60*24*30*12; //cookie ważne rok
  3. else
  4. $time = 0; //cookie jest usuwane po zamknięciu przeglądarki
  5.  
  6. setcookie("user_id",1,$time,"/");
Oczywiście nazwa i wartość cookie są przykładowe.

Za to samo logowanie można zrealizować w ten sposób, że zapisujesz dwa pliki cookie. Pierwszy to ID użytkownika z bazy, drugi to zaszyfrowana za pomocą algorytmu md5 kombinacja hasła+ID+jakiś ciąg znaków
  1. $user_id = 1; //unikalny ID użytkownika z bazy
  2. 1. setcookie("user_id",$user_id,$time,"/");
  3.  
  4. $string = "jakis_tekst"; //dowolny ciąg znaków
  5. $uniq = md5($user_id.$haslo.$string);
  6. 2. setcookie("uniq",$uniq,$time,"/");
Po każdym wyświetleniu strony pobierasz dane z bazy dla użytkownika $user_id i porównujesz hasło z tym co ma w cookie (przeprowadzając oczywiście operacje jak wyżej czyli md5 itd)

Do kontroli całego mechanizmu logowania zaleca się korzystanie z sesji PHP http://pl1.php.net/manual/en/book.session.php, które są bezpieczniejsze niż własne pliki cookie.

Ten post edytował Brick 26.06.2014, 09:07:29
Go to the top of the page
+Quote Post

Posty w temacie
- wezyrno   cookies, a dane logowania   21.06.2014, 20:30:04
- - 404   Tak, ale nie radziłbym przechowywać hasła...   21.06.2014, 21:22:05
- - trueblue   Jeśli chcesz stworzyć opcję "zapamiętaj mnie...   21.06.2014, 21:39:42
|- - 404   Cytat(trueblue @ 21.06.2014, 22:39:42...   21.06.2014, 22:21:16
- - trueblue   Nie żartuję, ale z rozpędu. Nie hasło, ale jakiś i...   22.06.2014, 07:54:46
- - wezyrno   CytatTak, ale nie radziłbym przechowywać hasła... ...   22.06.2014, 20:20:05
- - Turson   Nikt nie zaleca przechowywania hasła w jawnej form...   22.06.2014, 20:30:55
- - wezyrno   a w podstaci zakodowanej?   23.06.2014, 10:00:41
- - Crozin   Ale po co w ogóle trzymać jakiekolwiek dane użytko...   23.06.2014, 10:04:41
- - Pyton_000   sam losowy ciąg nie wystarczy bo wystarczy przenie...   23.06.2014, 10:13:31
- - Crozin   @Pyton_000: Generalnie dokładnie tak samo jak choc...   23.06.2014, 10:29:15
- - Pyton_000   Zgadza się, ale ulotność ma zapobiec przenoszeniu ...   23.06.2014, 13:13:05
- - wezyrno   ale nie rozumiem... przecież ciasteczka są tylko n...   23.06.2014, 13:21:12
- - nospor   1) Ktos wejdzie na komputer, z ktorego sie logowal...   23.06.2014, 15:38:12
- - wezyrno   Dzięki, mam więc jeszcze jedno pytanko tyczące się...   24.06.2014, 14:01:15
- - Crozin   http://forum.php.pl/index.php?s=&showt...t...   24.06.2014, 14:03:25
- - Brick   Opcja "zapamiętaj mnie" polega na tym że...   26.06.2014, 08:33:05
- - wezyrno   Dzięki przeogromne za dokładne objaśnienie. Skrypt...   11.07.2014, 12:39:49


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: 7.10.2025 - 23:55