- 14, May 2024
- #1
При попытке войти в систему регистрации заполняю все поля и получаю такую ошибку: "Пользователя не удалось добавить в базу данных!"
Я не знаю, что я сделал не так.
Я создал базу данных с именем «users» на phpmyadmin и создал таблицу с тем же именем, в которой установил идентификатор, имя пользователя, пароль и аватар.
Затем я написал этот PHP-скрипт:
сеанс_start();
$_SESSION['сообщение'] = '';
$mysqli = new mysqli("localhost", "root", "mypass123", "users");
//форма была отправлена с публикацией
if ($_SERVER["REQUEST_METHOD"] == "POST") {
//два пароля равны друг другу
if ($_POST['password'] == $_POST['confirmpassword']) {
//устанавливаем все переменные сообщения
$username = $mysqli->real_escape_string($_POST['username']); $email = $mysqli->real_escape_string($_POST['email']); $пароль = md5($_POST['пароль']); //md5 имеет пароль для безопасности $avatar_path = $mysqli->real_escape_string('images/'.$_FILES['avatar']['name']);
//убедимся, что тип файла — изображение
if (preg_match("!image!",$_FILES['avatar']['type'])) {
//копируем изображение в папку images/
if (copy($_FILES['avatar']['tmp_name'], $avatar_path)){
//устанавливаем переменные сеанса
$_SESSION['username'] = $username;
$_SESSION['аватар'] = $avatar_path;
//вставляем данные пользователя в базу данных
$sql = "ВСТАВИТЬ В пользователей (имя пользователя, адрес электронной почты, пароль, аватар)"
. "VALUES ('$username', '$email', '$password', '$avatar_path')";
//если запрос успешен, перенаправляем на страницу Welcome.php, готово!
if ($mysqli->query($sql) === true){
$_SESSION['message'] = "Регистрация прошла успешно! $username добавлен в базу данных!";
заголовок("Местоположение: Welcome.php");
}
еще {
$_SESSION['message'] = 'Пользователя не удалось добавить в базу данных!';
}
$mysqli->закрыть();
}
еще {
$_SESSION['message'] = 'Не удалось загрузить файл!';
}
}
еще {
$_SESSION['message'] = 'Загружайте только изображения в формате GIF, JPG или PNG!';
}
}
еще {
$_SESSION['message'] = 'Два пароля не совпадают!';
}
}
?>
Что я сделал не так?
Я создал базу данных с именем «users» на phpmyadmin и создал таблицу с тем же именем, в которой установил идентификатор, имя пользователя, пароль и аватар.
Затем я написал этот PHP-скрипт:
сеанс_start();
$_SESSION['сообщение'] = '';
$mysqli = new mysqli("localhost", "root", "mypass123", "users");
//форма была отправлена с публикацией
if ($_SERVER["REQUEST_METHOD"] == "POST") {
//два пароля равны друг другу
if ($_POST['password'] == $_POST['confirmpassword']) {
//устанавливаем все переменные сообщения
$username = $mysqli->real_escape_string($_POST['username']); $email = $mysqli->real_escape_string($_POST['email']); $пароль = md5($_POST['пароль']); //md5 имеет пароль для безопасности $avatar_path = $mysqli->real_escape_string('images/'.$_FILES['avatar']['name']);
//убедимся, что тип файла — изображение
if (preg_match("!image!",$_FILES['avatar']['type'])) {
//копируем изображение в папку images/
if (copy($_FILES['avatar']['tmp_name'], $avatar_path)){
//устанавливаем переменные сеанса
$_SESSION['username'] = $username;
$_SESSION['аватар'] = $avatar_path;
//вставляем данные пользователя в базу данных
$sql = "ВСТАВИТЬ В пользователей (имя пользователя, адрес электронной почты, пароль, аватар)"
. "VALUES ('$username', '$email', '$password', '$avatar_path')";
//если запрос успешен, перенаправляем на страницу Welcome.php, готово!
if ($mysqli->query($sql) === true){
$_SESSION['message'] = "Регистрация прошла успешно! $username добавлен в базу данных!";
заголовок("Местоположение: Welcome.php");
}
еще {
$_SESSION['message'] = 'Пользователя не удалось добавить в базу данных!';
}
$mysqli->закрыть();
}
еще {
$_SESSION['message'] = 'Не удалось загрузить файл!';
}
}
еще {
$_SESSION['message'] = 'Загружайте только изображения в формате GIF, JPG или PNG!';
}
}
еще {
$_SESSION['message'] = 'Два пароля не совпадают!';
}
}
?>
Создать аккаунт
Выберите свой аватар:Что я сделал не так?