Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] problem z logowaniem, opcja pamietaj mnie
barthek
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.12.2003

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


mozliwe ze ja to zle rozumiem, ale coz.. sytuacja wyglada nastepujaco:

skrypt logowania dziala tak, ze jezeli ktos zaznaczyl opcje 'pamietaj mnie' to tworzone jest ciasteczko z danymi potrzebnymi do zalogowania:
  1. <?php
  2. $dane = ($login.$haslo);
  3. setcookie ("dane", $dane,time()+3600*24*365);
  4. ?>


nastepnym razem jak wejdziemy na strone skrypt sprawdza czy ma ustawione ciasteczko. jezeli ma to pobiera dane i probuje sie zalogowac:
  1. <?php
  2. if(isset($_COOKIE["dane"]))
  3. {
  4. $dane = $_COOKIE["dane"];
  5. $login = substr($dane, 0, 32);
  6. $haslo = substr($dane, -32);
  7. }
  8. ?>


i to wszystko mi dziala! (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) problem pojawia sie przy wylogowywaniu.. mianowicie skrypt wylogowujacy wyglada tak:
  1. <?php
  2. setcookie ("dane", "",time()-3600*24*365);
  3. unset($_SESSION['login']);
  4. unset($_SESSION['haslo']);
  5. header("location:../index.php");
  6. ?>


dodam jeszcze ze w index.php na poczatku jest wlasnie includowany kod probujacy sie zalogowac poprzez dane uzyskane z ciasteczka..

problem jest tej natury, ze po nacisnieciu wyloguj i przekierowaniu do index.php automatycznie znowu mi sie loguje (pobierajac dane z ciasteczka), mimo ze przeciez teoretycznie cisteczko stracilo waznosc.. jezeli nie zaznacze opcji 'pamietaj mnie', czyli ciasteczka w ogole nie ma to wylogowywanie przebiega bezporblemowo..

jakies pomysly co tu jest nie tak?
z gory dziekuje..

edit: JEZELI NIE WIDZICIE TU BLEDU TOPOWIEDZCIE PRZYNAJMNIEJ JAK WY TAKIE RZECZY ROZWIAZUJECIE..

Ten post edytował barthek 20.02.2006, 08:47:00
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Neotion
post
Post #2





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 13.09.2004

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


hymhym... Uzywasz $_SESSION do pobierania danych z ciasteczek?

Tak sie chyba nie robi, może się mylę.

Do danych z ciasteczek używa się $_COOKIE

i tak:
  1. // Zapamietanie:
  2. <?php
  3. $dane = $login.'<jakistamseparator>'.$haslo; // Proponuje dać jakiś dziki znak ASCII jako separator, unikalny żeby nie było pom
    yłek
  4. setcookie ("dane", $dane,time()+3600*24*365);
  5. ?>
  6.  
  7. // Pozniejsze logowanie
  8. <?php
  9. if($_COOKIE['dane']) 
  10. {
  11. $cookieDane = explode('<jakistamseparator>',$_COOKIE['dane']);
  12. $login = $cookieDane[0];
  13. $haslo = $cookieDane[1];
  14. }
  15. ?>


Pomogłem czy powiedziałem tylko to co juz wiedziałeś (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ?

Ten post edytował Neotion 19.02.2006, 21:11:05
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: 26.12.2025 - 13:51