require("theme.php"); { if($aid!="" AND $pwd!="") { $result=sql_query("select password('$pwd')", $dbi); list($pwd)=sql_fetch_row($result, $dbi); $result=sql_query("select pwd from ".$prefix."_admin where aid='$aid'", $dbi); list($pass)=sql_fetch_row($result, $dbi); if($pass == $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:
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);