Здравейте, искам да заменя sha256 и да премина към bcrypt кодиране на паролите в базата данни. Получава се донякъде, но не мога да направя да взима паролата от базата данни и да я сравнява с вече въведената при вход с pdo. Много ще съм благодарен, ако някой компетентен вземе присърце темата и драсне 2-3 реда код, за да се получи магията. : ))))
Използвам този код при регистрация:
Това ми е вход функцията
Използвам този код при регистрация:
Код:
$newpass= password_hash($password, PASSWORD_BCRYPT, array("cost" => 12));
Това ми е вход функцията
Код:
public function Login($username, $password)
{
try {
$db = DB();
$query = $db->prepare("SELECT id FROM members WHERE username=:username AND password=:password");
$query->bindParam("username", $username, PDO::PARAM_STR);
$encpass= hash('sha256', $password);
$query->bindParam("password", $encpass, PDO::PARAM_STR);
$query->execute();
if ($query->rowCount() > 0) {
$result = $query->fetch(PDO::FETCH_OBJ);
return $result->id;
} else {
return false;
}
} catch (PDOException $e) {
exit($e->getMessage());
}
}