• Не проверяются пароли, в чем проблема?

    SagePtr
    @SagePtr
    Еда - это святое
    $password = crypt($_POST['password'], $salt);
    Не изобретайте велосипед и откройте для себя эти функции: password_hash, password_verify
    И как уже подсказали выше, нужно проверять длину не хеша пароля, а исходного пароля (у хэша длина в любом случае будет больше 6 символов и проверку он автоматом пройдёт, даже при пустом пароле)
    Ответ написан
    Комментировать
  • Не проверяются пароли, в чем проблема?

    muzikant777
    @muzikant777
    PHP/Vue разработчик
    1. Что возвращают функции protect() и crypt()?
    2. Почитайте про разницу между OR и || в PHP и используйте && и || вместо AND и OR соответственно.
    3. Используйте XDebug или, в крайнем случае, var_dump($password), чтобы узнать, что по факту лежит в этих переменных перед проверкой.

    $password = crypt($_POST['password'], $salt);
    Теперь в $password лежит не пароль, а его (скорее всего) хэш. И затем вы делаете проверку не длины пароля, а его хэша. Не надо так.
    Ответ написан
    Комментировать