Willkommen bei Tippspiel 2027";
echo "
Dies ist die Nachfolgeversion des alten Tippspiels (Pure PHP Variante).
";
try {
$db = Database::getConnection();
$userCount = $db->query("SELECT COUNT(*) FROM users")->fetchColumn();
echo "Datenbank verbunden! Aktuell $userCount User im System.
";
echo "Portierte Backend-Logik (Test)
";
// 1. Test der Score-Berechnung (getScoreLocal Logik aus Tipp.php)
echo "Punkteberechnung
";
$scoreTest = Tipp::getScoreLocal(2, 1, 2, 1, true); // Ergebnis: 2:1, Tipp: 2:1 (mit Joker)
echo "Test: Spiel endet 2:1, getippt wurde 2:1 mit Joker. Erwartet: 4 Punkte. Berechnet: $scoreTest Punkte.
";
// 2. Test der Spiel-Logiken
echo "Spiele der letzten gespielten Runde
";
// Finde zunächst die ID der letzten gespielten Runde (wo es Ergebnisse gibt)
$lastRoundId = $db->query("SELECT round_id FROM games WHERE score1 > -1 ORDER BY id DESC LIMIT 1")->fetchColumn();
if ($lastRoundId) {
// Hole alle Spiele exakt dieser Runde
$games = Game::getGamesByRound($lastRoundId);
if ($games) {
echo "";
foreach ($games as $g) {
$status = Game::getResultString($g['score1'], $g['score2'], $g['kickoff']);
$locked = Game::isLocked($g['kickoff']) ? "Gesperrt" : "Offen";
echo "- " . htmlspecialchars($g['team1'] . " vs " . $g['team2']) . " | Status: $status | $locked
";
}
echo "
";
}
} else {
echo "Keine gespielten Spiele gefunden.
";
}
} catch (Exception $e) {
echo "Datenbankfehler: " . $e->getMessage() . "
";
}
} elseif ($uri === '/api/status') {
header('Content-Type: application/json');
echo json_encode(['status' => 'ok', 'version' => '2027.1']);
} else {
http_response_code(404);
echo "404 Not Found";
}