Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zapamiętanie sesji w ciasteczkach
Forum PHP.pl > Forum > Przedszkole
Star
witam, mam strone na ktorej jest formularz do logowania i chce dodac przycisk w stylu "zapamietaj mnie".

zrobilem wiec cos takiego :

na stronie z logowaniem jest checkbox:
<td><input type=\"checkbox\" name=\"autologin\" value=\"1\"></td>

a w pliki przetwarzającym:

  1. $suma_kontrolna=$_SESSION['user_nick'].'_'.md5($_SESSION['user_nick'].'!Q@W#E$R%T^Y&');
  2. if(isset($_POST['autologin'])) setcookie('autologin',$suma_kontrolna,time()+3600*24*14);


w nagłówku kazdej strony jest cos takiego:
  1. if(isset($_COOKIE['autologin'])) {
  2. $tab=explode('_',$_COOKIE['autologin']);
  3. $suma_kontrolna=$tab[0].'_'.md5($tab[0].'!Q@W#E$R%T^Y&');
  4. if($suma_kontrolna==$_COOKIE['autologin']) $_SESSION['user_nick']=$tab[0];
  5. }



no i nie działa.ktoś się orientuje co tu jest nie tak lub czego tu brakuje ?
Aqu
Przede wszystkim sprawdź czy wszystkie zmienne istnieją i mają to co chcesz:
var_dump($_COOKIE['autologin'], $tab, $suma_kontrolna, ..)
Star


zapisuje sie poprawnie >>
string(46) "administrator_5c6c21ce52eb77526b17a3801980b4f3" NULL NULL
Aqu
Ok, ale bardziej mi chodziło o ten fragment:
  1. if(isset($_COOKIE['autologin'])) {

daj w tym ifie, na końcu, tego var_dumpa
Star
dałem i wyswietla cookies:
string(46) "administrator_5c6c21ce52eb77526b17a3801980b4f3" array(2) { [0]=> string(13) "administrator" [1]=> string(32) "5c6c21ce52eb77526b17a3801980b4f3" } string(46) "administrator_5c6c21ce52eb77526b17a3801980b4f3"
com
Musisz przy tworzeniu cookie podac adres czyli reszta parametrow. Jak patrz dokumentacja
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.