exec(" CREATE TABLE IF NOT EXISTS `users` ( `id` INT AUTO_INCREMENT PRIMARY KEY, `username` VARCHAR(255) NOT NULL UNIQUE, `email` VARCHAR(255) NOT NULL UNIQUE, `password` VARCHAR(255) NOT NULL, `is_admin` BOOLEAN NOT NULL DEFAULT 0, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=INNODB; "); echo "Table 'users' created successfully or already exists.\n"; // Create videos table $pdo->exec(" CREATE TABLE IF NOT EXISTS `videos` ( `id` INT AUTO_INCREMENT PRIMARY KEY, `user_id` INT, `title` VARCHAR(255) NOT NULL, `description` TEXT, `upload_date` DATE, `views` INT DEFAULT 0, `creator` VARCHAR(255), `creator_avatar` VARCHAR(255), `thumbnail_url` VARCHAR(255), `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON DELETE SET NULL ) ENGINE=INNODB; "); echo "Table 'videos' created successfully or already exists.\n"; // Insert a default admin user if one doesn't exist $stmt = $pdo->prepare("SELECT id FROM users WHERE username = ?"); $stmt->execute(['admin']); if ($stmt->fetch()) { echo "Admin user already exists.\n"; } else { $password_hash = password_hash('password', PASSWORD_DEFAULT); $stmt = $pdo->prepare("INSERT INTO users (username, email, password, is_admin) VALUES (?, ?, ?, ?)"); $stmt->execute(['admin', 'admin@example.com', $password_hash, 1]); echo "Default admin user created successfully. Username: admin, Password: password\n"; } } catch (PDOException $e) { die("Database setup failed: " . $e->getMessage()); }