prepare('DELETE FROM categories WHERE id = ?'); $stmt->execute([(int) $_POST['delete_id']]); flash('success', 'Kategorie gelöscht.'); redirect('/admin/categories.php'); } if (isset($_POST['save'])) { $catId = !empty($_POST['cat_id']) ? (int) $_POST['cat_id'] : null; $name = trim($_POST['name'] ?? ''); $description = trim($_POST['description'] ?? ''); $sortOrder = (int) ($_POST['sort_order'] ?? 0); if ($name === '') { flash('error', 'Name ist erforderlich.'); } else { $slug = slugify($name); $slugCheck = $pdo->prepare('SELECT id FROM categories WHERE slug = ? AND id != ?'); $slugCheck->execute([$slug, $catId ?? 0]); if ($slugCheck->fetch()) { flash('error', 'Eine Kategorie mit diesem Namen existiert bereits.'); } else { if ($catId) { $stmt = $pdo->prepare('UPDATE categories SET name=?, slug=?, description=?, sort_order=? WHERE id=?'); $stmt->execute([$name, $slug, $description, $sortOrder, $catId]); flash('success', 'Kategorie aktualisiert.'); } else { $stmt = $pdo->prepare('INSERT INTO categories (name, slug, description, sort_order) VALUES (?, ?, ?, ?)'); $stmt->execute([$name, $slug, $description, $sortOrder]); flash('success', 'Kategorie erstellt.'); } } } redirect('/admin/categories.php'); } } $categories = $pdo->query('SELECT * FROM categories ORDER BY sort_order, name')->fetchAll(); $editCat = null; if (isset($_GET['edit'])) { $stmt = $pdo->prepare('SELECT * FROM categories WHERE id = ?'); $stmt->execute([(int) $_GET['edit']]); $editCat = $stmt->fetch(); } $pageTitle = 'Kategorien'; $currentPage = 'categories'; ob_start(); ?>

Abbrechen

Alle Kategorien ()

Noch keine Kategorien vorhanden.

NameSlugBeschreibungReihenfolgeAktionen
Bearbeiten