prepare($query); $stmt->execute(); $bericht = []; while ($row = $stmt->fetch()) { $detail_query = "SELECT s.vorname, s.nachname, GROUP_CONCAT(k.name SEPARATOR ', ') as angemeldete_kurse FROM schueler s LEFT JOIN anmeldungen a ON s.id = a.schueler_id LEFT JOIN kurse k ON a.kurs_id = k.id WHERE s.betrieb_id = :betrieb_id GROUP BY s.id"; $detail_stmt = $db->prepare($detail_query); $detail_stmt->execute([':betrieb_id' => $row['betrieb_id']]); $schueler = []; while ($detail = $detail_stmt->fetch()) { $schueler[] = [ 'vorname' => $detail['vorname'], 'nachname' => $detail['nachname'], 'angemeldete_kurse' => $detail['angemeldete_kurse'] ?? 'Keine Kurse' ]; } $bericht[] = [ 'betrieb_id' => (int)$row['betrieb_id'], 'betrieb_name' => $row['betrieb_name'], 'adresse' => $row['adresse'], 'anzahl_schueler' => (int)$row['anzahl_schueler'], 'anzahl_anmeldungen' => (int)$row['anzahl_anmeldungen'], 'schueler' => $schueler ]; } echo json_encode($bericht); } catch (Exception $e) { error_log("Error in berichte/teilnehmer_betrieb.php: " . $e->getMessage()); http_response_code(500); echo json_encode(['message' => 'Fehler beim Erstellen des Berichts']); }