У меня есть базовая страница входа в систему c, которая использует этот код PHP для загрузки непосредственно в мою базу данных. Когда я использую этот код, он работает нормально и загружает все в мою таблицу:
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$Email = $_POST['Email'];
$username = $_POST['username'];
$password = ($_POST['password']);
$PhoneNumber = ($_POST['PhoneNumber']);
$query = $con-> prepare("
INSERT INTO Users (fName, lName,Email, username, pass_word,PhoneNumber)
VALUES (:fname, :lname, :Email, :username,:password, :PhoneNumber)
");
$success = $query-> execute ([
'fname' => $fname,
'lname' => $lname,
'Email' => $Email,
'username' => $username,
'password' => $password,
'PhoneNumber' => $PhoneNumber
]);
Но когда я добавляю функцию пароля ha sh, он просто ничего не загружает в базу данных.
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$Email = $_POST['Email'];
$username = $_POST['username'];
$password = ($_POST['password']);
$PhoneNumber = ($_POST['PhoneNumber']);
$hashed_password = password_hash($password, PASSWORD_DEFAULT);
$query = $con-> prepare("
INSERT INTO Users (fName, lName,Email, username, pass_word,PhoneNumber)
VALUES (:fname, :lname, :Email, :username,:password, :PhoneNumber)
");
$success = $query-> execute ([
'fname' => $fname,
'lname' => $lname,
'Email' => $Email,
'username' => $username,
'password' => $hashed_password,
'PhoneNumber' => $PhoneNumber
]);
Обновление: я внес изменения, которые были предложены, но у меня все еще остается та же проблема. Это мой обновленный код:
$password = $_POST['password'];
$hashed_password = password_hash($_POST['password'], PASSWORD_BCRYPT, ['cost' => 15]);
$query = $con-> prepare("
INSERT INTO Users (fName, lName,Email, username, pass_word,PhoneNumber)
VALUES (:fname, :lname, :Email, :username,:password, :PhoneNumber)
");
$success = $query-> execute ([
'fname' => $fname,
'lname' => $lname,
'Email' => $Email,
'username' => $username,
'password' => $hashed_password,
'PhoneNumber' => $PhoneNumber
]);