prepare('SELECT id FROM macro_areas WHERE (nome = ? OR slug = ?) AND id <> ?'); $stmt->execute([$nome, $slug, $id ?: 0]); if ($stmt->fetch()) { $error = "Já existe uma Macro Área com este nome."; } else { if ($id) { // Update $stmt = $pdo->prepare('UPDATE macro_areas SET nome = ?, slug = ?, descricao = ?, ativo = ? WHERE id = ?'); $stmt->execute([$nome, $slug, $descricao, $ativo, $id]); } else { // Create $stmt = $pdo->prepare('INSERT INTO macro_areas (nome, slug, descricao, ativo, user_id) VALUES (?, ?, ?, ?, ?)'); $stmt->execute([$nome, $slug, $descricao, $ativo, $_SESSION['user_id'] ?? 1]); } // Redirect to avoid form resubmission header("Location: macro_areas.php"); exit; } } } // Handle deletion if (isset($_GET['delete'])) { $id = $_GET['delete']; // It's a good practice to check for dependencies before deleting $stmt = $pdo->prepare('DELETE FROM macro_areas WHERE id = ?'); $stmt->execute([$id]); header("Location: macro_areas.php"); exit; } // Fetch macro areas from the database $stmt = $pdo->query('SELECT * FROM macro_areas ORDER BY nome ASC'); $macro_areas = $stmt->fetchAll(PDO::FETCH_ASSOC); ?>