Текущий синтаксис для моих подготовленных операторов неверен, где я: (INSERT ...?,?,?)
Я пытался скопировать синтаксис из разных примеров, но, похоже, чем больше я пытаюсьбольше я ломаю свою систему входа в систему.У меня есть несколько противоречивых примеров, и я не уверен, какой синтаксис является правильным для использования.Нужно ли использовать $ stmt = $ conn-> prepare перед INSERT?
// create preprepared statement
$sql = "INSERT INTO `user` (username, password, email) VALUES (?, ?, ?)";
// check if sql statement is correct
if ($stmt = mysqli_prepare($connection, $sql)) {
// Add the variables to the stmt
mysqli_stmt_bind_param($stmt, "sss", $param_username, $param_hashed_password, $param_email);
$param_username = $username;
$param_password = $hashed_password;
$param_email = $email;
// Attempt to execute the stmt
if(mysqli_stmt_execute($stmt)) {
// If statement executed
$_SESSION["username"] = $username;
header("location: login.php");
В данный момент он не вставляет никаких значений в мою базу данных, и регистрация пользователя не выполняется.
EDIT:
$ password = $ _POST ['password'];
$ hashed_password = password_hash ($ password, PASSWORD_DEFAULT);
Мне только что пришло в голову, что это может бытьневерное использование password_hash?