Я написал следующий код для вставки данных в таблицу моей базы данных, но, к сожалению, он не работает. У меня есть двойной и трехкратно проверенный код, и ошибок нет. Консоль также не отображается.Почему мой код не вставляет данные в базу данных?
Я не ошибочно написали какие-либо детали, необходимые для подключения к базе данных, и переменные также верны, поэтому я затрудняюсь.
Если кто-то может помочь, это будет глубоко оценено.
Мой код:
<?php
function obfuscate($type, $data) {
if ($type == "PIN"):
$f_int = (int)md5($data);
$data = str_split($data);
$rev = implode("", array_reverse($data));
$sum = array_sum($data) + $f_int;
$data = implode("", $data);
$data += $sum + $rev + 1026;
// Keep the first four digits if the result is longer
if (strlen($data) > 4):
$data = substr($data, 0, 4);
endif;
return $data;
elseif ($type == "password"):
$data = password_hash($data, PASSWORD_DEFAULT, ['cost' => 12]);
return $data;
endif;
}
function insert_user($username, $email, $password, $PIN, $Account_Type, $Account_Status, $Referrer, $Balance) {
// Connect to the server and the database or show error
$connection = mysqli_connect("localhost", "root", "") or die("Couldn't connect to the server.");
mysqli_select_db($connection, "Calisoft_flu_db") or die("Couldn't connect to the database.");
// Sanitise the data
$username = mysqli_real_escape_string($connection, $username);
$email = mysqli_real_escape_string($connection, $email);
$password = mysqli_real_escape_string($connection, $password);
$PIN = mysqli_real_escape_string($connection, $PIN);
// Get the rest of the data
$Registration_Date = date("Y-m-d");
// Obfuscate password and PIN
$password = obfuscate("password", $password);
$PIN = obfuscate("PIN", $PIN);
// Make query and insert data to database
$query = "INSERT INTO `users` (`ID`, `Username`, `Email`, `Password`, `PIN`, `Registration_Date`, `Account_Type`, `Account_Status`, `Referrer`, `Balance`) VALUES ('NULL', '$username', '$email', '$password', '$PIN', '$Registration_Date', '$Account_Type', '$Account_Status', '$Referrer', '$Balance')";
$registered = mysqli_query($connection, $query);
if ($registered) {
echo "Register successful!";
}
// End the connection
mysqli_close($connection);
}
insert_user("@user1", "[email protected]", "user12345678", "1234", "Member", "Active", "0", "0");
?>
Echo ваш запрос и этот запрос в тузд консоли и проверить результаты. – Kamran
Получаете ли вы «Зарегистрировать успешный!»? Вы также должны проверить статус запроса. – chris85
Пожалуйста, пожалуйста, пожалуйста. Пока еще рано, изучите параметризованные запросы. –