Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]problem z logowaniem
kisiel_32
post
Post #1





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

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


Mam problem z logowaniem do panelu administracyjnego. Otóż po przenosinach na inny serwer, nie mogę się zalogować. wcześniej było mysql, zdaję się, że poniżej wersji 4.2 a teraz jest wersja 5.037 i hasze są zapisywane na początku z gwiazdką. Próbowałem już wszystkiego, chodzi mi o ten kawałek kodu:


  1. if(!isset($theme))
  2. require("theme.php");
  3.  
  4. if((isset($aid)) && (isset($pwd)) && ($op == "login"))
  5. {
  6. if($aid!="" AND $pwd!="")
  7. {
  8. $result=sql_query("select password('$pwd')", $dbi);
  9. list($pwd)=sql_fetch_row($result, $dbi);
  10.  
  11. $result=sql_query("select pwd from ".$prefix."_admin where aid='$aid'", $dbi);
  12. list($pass)=sql_fetch_row($result, $dbi);
  13. if($pass == $pwd)
  14. {
  15. $admin = base64_encode("$aid:$pwd");

setcookie("admin","$admin",time()+28800[/PHP]); //8 godz.
unset($op);
}
}
}[/PHP]

To kawałek kodu, który tak rozumiem $aid i $pwd to login i hasło, które wpiszę w formularzu, a więc jeżeli nie jest puste to jest haszowane za pomocą funkcji password z mysql. Dalej skrypt pobiera hasz z bazy danych i jeśli hasze są takie same to:

  1. $admin = base64_encode("$aid:$pwd");
  2. setcookie("admin","$admin",time()+28800); //8 godz.
  3. unset($op);


No właśnie ten kawałek kodu to problem, nie za bardzow wiem o co chodzi. Funkcja base64_encodeprzekształca te dwa hasze i ustawia jako wartość ciasteczka.

Potrzebowałbym jakiś debbuger, abym mógł sprawdzić jakie wartości przyjmuje $pwd i $pass. i Prośba o łoptaologiczne wytłumaczenie kodu:
$admin = base64_encode("$aid:$pwd");
setcookie("admin","$admin",time()+28800); //8 godz.
unset($op);

Go to the top of the page
+Quote Post

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: 22.08.2025 - 22:34