Данные не сохраняются в базе данных - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу сохранить данные формы в базе данных.Я получаю сообщение об успехе в URL.Но данные не сохраняются в базе данных.mysqli_stmt_execute($stmt); кажется не выполненным.Может кто-нибудь объяснить мне код ошибки ниже?

if (isset($_POST['register-submit'])) {
    $firstname = $_POST['firstname'];
    $lastname = $_POST['lastname'];
    $email = $_POST['email'];
    $password = $_POST['password'];
    $type = $_POST['utype'];

    $sql = "INSERT INTO `users`(`idroles`, `user_email`, `first_name`, `last_name`, `password`) VALUES((SELECT `idroles` FROM `roles` WHERE `name`= $type), ?, ?, ?, ?)";
    $stmt = mysqli_stmt_init($conn);
    if (!mysqli_stmt_prepare($stmt, $sql)) {
        header("Location../View/login_register.php");
        exit();
    } else if (mysqli_stmt_prepare($stmt, $sql)) {
        $hashpwd = password_hash($password, PASSWORD_DEFAULT);
        mysqli_stmt_bind_param($stmt, "ssss", $firstname, $lastname, $email, $hashpwd);
        mysqli_stmt_execute($stmt);
        header("Location:../View/login_register.php?success");
        exit();
    }
}

1 Ответ

0 голосов
/ 17 апреля 2019

Вы можете проверить, удалось ли mysqli_stmt_execute, выполнив следующие действия:

if(mysqli_stmt_execute($stmt)) {
    header("Location:../View/login_register.php?success");
    exit();
} else {
    echo mysqli_error($conn);
    exit();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...