13. Oktober 2024

Jahresmeisterschaft – Top 3

[insert_php]
top3Ausgeben();

function getDatabaseConnection()
{
$host = „tvobfelden.ch“;
$user = „tvobfeld_basic“;
$passwort = „YaU!5xa:2iE%5t“;
$database = „tvobfeld_basic“;

return mysqli_connect($host, $user, $passwort, $database);
}

function top3Ausgeben(){
$con = getDatabaseConnection();

$year = getYear($con);
$resultat = array();

$selectResultat = mysqli_query($con, „SELECT * FROM jm_resultat WHERE jahr=$year GROUP BY person_id“);

while($rowResultat = mysqli_fetch_assoc($selectResultat))
{
$selectPerson = mysqli_query($con, „SELECT * FROM jm_personen WHERE id=“.$rowResultat[‚person_id‘]);
$namePerson;
while($rowPerson = mysqli_fetch_assoc($selectPerson))
{
$resultat[] = array(„NAME“ => $rowPerson[‚vorname‘].“ „.$rowPerson[’name‘]);
}

$punkte = 0;
$selectResultatPerson = mysqli_query($con, „SELECT * FROM jm_resultat WHERE jahr=$year AND person_id=“.$rowResultat[‚person_id‘]);
while($rowResultatPerson = mysqli_fetch_assoc($selectResultatPerson))
{
$punkte += $rowResultatPerson[‚punkte‘];
}

$resultat[Count($resultat) – 1][„punkte“] = $punkte;
}

//Sortieren
for($count = 0; $count < Count($resultat); $count++) { for($count2 = $count + 1; $count2 < Count($resultat); $count2++) { if($resultat[$count]["punkte"] < $resultat[$count2]["punkte"]) { $speicher = $resultat[$count]; $resultat[$count] = $resultat[$count2]; $resultat[$count2] = $speicher; } //Sonst sortieren nach Siegen, Zweitplatziertem ... else if($resultat[$count]["punkte"] == $resultat[$count2]["punkte"]) { //Turnstunden und Total nicht berücksichtigen $resultatNeu1 = $resultat[$count]; $resultatNeu2 = $resultat[$count2]; if(isset($resultatNeu1["JM11"]) && isset($resultatNeu2["JM11"])) { unset($resultatNeu1["JM11"]); unset($resultatNeu2["JM11"]); } unset($resultatNeu1["Total"]); unset($resultatNeu2["Total"]); $counts1 = array_count_values($resultatNeu1); $counts2 = array_count_values($resultatNeu2); $currentRangPunkte = 30; for($i = 30;$i >= 0; $i–)
{
if(!isset($counts1[$i]))
{
$counts1[$i] = 0;
}
if(!isset($counts2[$i]))
{
$counts2[$i] = 0;
}
}

while($counts1[$currentRangPunkte] == $counts2[$currentRangPunkte] && $currentRangPunkte != 0)
{
$currentRangPunkte = $currentRangPunkte -1;
}
if($counts1[$currentRangPunkte] < $counts2[$currentRangPunkte]) { $speicher = $resultat[$count]; $resultat[$count] = $resultat[$count2]; $resultat[$count2] = $speicher; } } } } for($count = 0; $count < Count($resultat) && $count < 3; $count++) { echo "

„;
echo „

\"\"

„;
echo „

„.$resultat[$count][„NAME“].“ („.$resultat[$count][„punkte“].“)

„;
echo „

„;
}
}

function getYear($con)
{
$jahr = date(„Y“);

if(isset($_GET[‚jahr‘]))
{
$jahr = $_GET[‚jahr‘];
}
$jahr = $con->real_escape_string($jahr);

//Prüfen ob Jahr bereits Resultate beinhaltet
$select = mysqli_query($con, „SELECT * FROM jm_resultat WHERE jahr=$jahr“);
if(mysqli_num_rows($select) == 0)
{
$jahr = date(„Y“);
}
return $jahr;
}
[/insert_php]