Не можете да хеширате входа и след това да правите заявка срещу него в базата данни, тъй като хешът ще използва различна произволна сол всеки път. Така че можете да хеширате една и съща парола хиляди пъти и да получите 1000 различни резултата.
Трябва просто да потърсите в БД за записа, свързан с потребителското име, след което да сравните хеша на паролата, върнат от БД с входната парола, като използвате password_verify()
.
Също така, когато първоначално пишете хеша в DB при създаване на парола (използвайки password_hash()
) няма нужда да избягвате хеша. password_hash()
не се използва изобщо в процеса на проверка на паролата.