12) { $month = 1; $year++; } // Kategorien aus der Datenbank abrufen $categoryStmt = $pdo->query("SELECT category_id, name FROM categories ORDER BY name"); $categories = $categoryStmt->fetchAll(); // Standardmäßig alle Kategorien auswählen, falls keine Auswahl getroffen wurde if (array_key_exists('categories', $_GET) && $_GET['categories'] !== []) { $selectedCategories = $_GET['categories']; } else { $selectedCategories = array_column($categories, 'category_id'); } // Daten abrufen für den ausgewählten Monat und die ausgewählten Kategorien $sql = " SELECT u.id AS user_id, u.username, COALESCE(SUM(e.amount), 0) AS gesamtbetrag FROM users u LEFT JOIN entries e ON e.user_id = u.id AND MONTH(e.date) = ? AND YEAR(e.date) = ? AND e.category IN (" . implode(',', array_fill(0, count($selectedCategories), '?')) . ") GROUP BY u.id, u.username; "; $params = array_merge([$month, $year], $selectedCategories); $stmt = $pdo->prepare($sql); $stmt->execute($params); $entries = $stmt->fetchAll(); // Namen der aktuell ausgewählten Kategorien ermitteln (für den Link zum Dashboard) $selectedCategoryNames = []; foreach ($categories as $category) { if (in_array($category['category_id'], $selectedCategories)) { $selectedCategoryNames[] = $category['name']; } } ?> FSCash - Personenreport



Zahler Summe