<?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());
}