Istället för att använda MD5 eller försöka dekryptera lösenordet - som andra här har föreslagit - använd helt enkelt PHP:s ursprungliga password_hash() funktion som automatiskt kontrollerar om lösenordet är rätt för dig.
Kryptera lösenordet så här:
$unencrypted_password = 'secret!';
$encrypted_password = password_hash($unencrypted_password, PASSWORD_DEFAULT);
Infoga sedan i din DB så här:
INSERT INTO users (encrypted_password, username) VALUES ($encrypted_password, $username);
När du vill kontrollera om lösenordet är korrekt, välj lösenordet från databasen med:
SELECT encrypted_password FROM users WHERE username = $username;
Kontrollera slutligen att lösenordet är korrekt genom att använda passoword_verify() :
$correct = password_verify($unecnrypted_password, $encrypted_password);
if($correct == true) {
echo 'correct password!';
} else {
echo 'password incorrect!';
}
Var noga med att skydda mot SQL-injektion, eftersom ovanstående kod är sårbar för det.