0) { $stmt = $pdo->prepare("UPDATE cases SET title=?, text=?, effect=?, sort_order=?, is_active=? WHERE id=?"); $stmt->execute([$title, $text, $effect, $sort, $isActive, $id]); } else { $stmt = $pdo->prepare("INSERT INTO cases (title, text, effect, sort_order, is_active) VALUES (?, ?, ?, ?, ?)"); $stmt->execute([$title, $text, $effect, $sort, $isActive]); } $message = $id > 0 ? 'Пример обновлён.' : 'Пример добавлен.'; } catch (\Exception $e) { $message = 'Ошибка БД: ' . $e->getMessage(); } } } // Delete if (isset($_GET['delete'])) { $did = (int)$_GET['delete']; $csrf = $_GET['csrf'] ?? ''; if (auth_csrf_verify($csrf)) { $stmt = $pdo->prepare("DELETE FROM cases WHERE id=?"); $stmt->execute([$did]); header('Location: /service/pages/owner/cases.php'); exit; } } // Edit mode $editId = (int)($_GET['edit'] ?? 0); $editRow = null; if ($editId > 0) { $stmt = $pdo->prepare("SELECT * FROM cases WHERE id=?"); $stmt->execute([$editId]); $editRow = $stmt->fetch(); } // List $stmt = $pdo->query("SELECT * FROM cases ORDER BY sort_order ASC, id ASC"); $cases = $stmt->fetchAll(); if (empty($_SESSION['csrf_token'])) { $_SESSION['csrf_token'] = bin2hex(random_bytes(32)); } require __DIR__ . '/../../inc/header.php'; ?>