Загрузка данных


<?php
// create_admin.php – Скрипт быстрого создания администратора в базе данных
require_once 'db.php';

$login = 'admin';
$email = 'admin@mail.ru';
$password = 'admin123';

// Хэшируем пароль для безопасности системы
$password_hash = password_hash($password, PASSWORD_DEFAULT);

try {
    // Находим идентификатор роли Администратора в базе данных
    $role_stmt = $pdo->prepare("SELECT id FROM roles WHERE role_name = 'Администратор'");
    $role_stmt->execute();
    $role_id = $role_stmt->fetchColumn();

    if (!$role_id) {
        die("Ошибка: Роль Администратор не найдена в базе данных. Сначала импортируйте структуру таблиц.");
    }

    // Проверяем, существует ли уже пользователь с таким логином
    $check_stmt = $pdo->prepare("SELECT id FROM users WHERE login = ?");
    $check_stmt->execute([$login]);
    $existing_user = $check_stmt->fetch();

    if ($existing_user) {
        die("Пользователь с логином admin уже зарегистрирован в базе данных.");
    }

    // Вставляем запись в таблицу пользователей
    $insert_stmt = $pdo->prepare("INSERT INTO users (login, email, password_hash, role_id, is_active) VALUES (?, ?, ?, ?, 1)");
    $insert_stmt->execute([$login, $email, $password_hash, $role_id]);

    echo "<h2 style='color: green;'>Учетная запись администратора успешно создана!</h2>";
    echo "<p>Логин: <b>" . htmlspecialchars($login) . "</b></p>";
    echo "<p>Пароль: <b>" . htmlspecialchars($password) . "</b></p>";
    echo "<p>Email: <b>" . htmlspecialchars($email) . "</b></p>";
    echo "<p><a href='login.php'>Перейти на страницу входа</a></p>";

} catch (PDOException $e) {
    die("Ошибка выполнения запроса к базе данных: " . $e->getMessage());
}