Я прочитал несколько постов о том, как реализовать password_hash (), и попытался это сделать.
Когда я запускаю свой код без хеширования, он работает нормально, но когда я добавляю функцию хеширования, я сталкиваюсь с проблемами.
Под бедой я имею в виду, что страница просто пуста, и в БД ничего не сохраняется.
Вот код, относящийся к хешированию и записи в БД
//Hasing of pw
$hash = password_hash($Password, PASSWORD_DEFAULT);
//Creation of member
$query_insert_user = "INSERT INTO `members` ( `Username`, `Email`, `Password`, `Activation`) VALUES ( '$name', '$Email', '$hash', '$activation')";
$ Password здесь — это открытый текстовый пароль, полученный со страницы.
Я не вижу, что является причиной проблемы.
Любые указатели будут высоко оценены.
Вероятно, пустая страница вызвана отсутствием включенных отчетов об ошибках.
Функции password_hash а также password_verify требует PHP версии 5.5.0 для работы.
Использование версии PHP ниже, которая приводит к сбою вашего скрипта.
Функция password_hash
а также password_verify
требует PHP версии 5.5.0 для работы.
Если вы используете PHP version 5.5.0
тогда попробуй
echo $hash; exit();
Подтвердить пароль хэша пароля. Вы должны использовать password_verify
функция для проверки паролей.
password_verify
Проверяет, что данный хеш соответствует данному паролю.
Обратите внимание, что password_hash()
возвращает алгоритм, стоимость и соль как часть возвращенного хэша. Поэтому вся информация, необходимая для проверки хэша, включена в него. Это позволяет функции проверки проверять хеш, не требуя отдельного хранения для соли или информации алгоритма.