Hallo Leute,
ich bin momentan dabei mir eine online-Fußball-Liga aufzubauen. Das Admininterface habe ich soweit fertig (Spieler hinzufügen, Mannschaften hinzufügen, Ligen hinzufügen... etc.).
Nun habe ich eine Tabelle mit dem namen "liga_mannschaften". Diese Tabelle ist folgendermaßen aufgebaut: id/name/liga
also als BSP: 1/SV Werder Bremen/1. Bundesliga
Jetzt komme ich an den Punkt, an dem ich einen Spielplan für die 1. Bundesliga generieren muss ( hin und Rückrunde). Dank dieses Forums habe ich ein Script gefunden, welches einen zufälligen Spielplan erstellt, jedoch:
1. nur Hinrunde und
2. ohne Ergebnismeldung
Ich denke, ich muss jedes Spiel in die Datenbank eintragen, um auch die Ergebnisse speichern zu können, d.h ne neue Tabelle mit dem namen "spielplan_bundesliga" oder so ne?
Also ich weiß leider echt nicht weiter, und bräuchte daher dringend eure Hilfe.
Am Ende soll es so aussehen:
Jeder registrierte Spieler bekommt eine Mannschft zugewiesen aus der 1. Bundesliga und soll dann, nachdem er die Spiele ausgetragen hat, das Spiel auch eintragen können mit ergebnis etc. Aber das ist jetzt hier nciht gefragt, sondern nur, wie ich den Spielplan erstellen und ihn gleichzeitig in die Datenbank bekomme.
Das script was ich oben beschrieben habe ist folgendes:
Vielen Dank im Vorraus für die Hilfe hier im Forum!
ich bin momentan dabei mir eine online-Fußball-Liga aufzubauen. Das Admininterface habe ich soweit fertig (Spieler hinzufügen, Mannschaften hinzufügen, Ligen hinzufügen... etc.).
Nun habe ich eine Tabelle mit dem namen "liga_mannschaften". Diese Tabelle ist folgendermaßen aufgebaut: id/name/liga
also als BSP: 1/SV Werder Bremen/1. Bundesliga
Jetzt komme ich an den Punkt, an dem ich einen Spielplan für die 1. Bundesliga generieren muss ( hin und Rückrunde). Dank dieses Forums habe ich ein Script gefunden, welches einen zufälligen Spielplan erstellt, jedoch:
1. nur Hinrunde und
2. ohne Ergebnismeldung
Ich denke, ich muss jedes Spiel in die Datenbank eintragen, um auch die Ergebnisse speichern zu können, d.h ne neue Tabelle mit dem namen "spielplan_bundesliga" oder so ne?
Also ich weiß leider echt nicht weiter, und bräuchte daher dringend eure Hilfe.
Am Ende soll es so aussehen:
Jeder registrierte Spieler bekommt eine Mannschft zugewiesen aus der 1. Bundesliga und soll dann, nachdem er die Spiele ausgetragen hat, das Spiel auch eintragen können mit ergebnis etc. Aber das ist jetzt hier nciht gefragt, sondern nur, wie ich den Spielplan erstellen und ihn gleichzeitig in die Datenbank bekomme.
Das script was ich oben beschrieben habe ist folgendes:
PHP:
<?php
// Datenbankverbindung herstellen
@include("config/config.php");
// Teams aus DB holen
$sql = 'SELECT
name
FROM
fifa_mannschaften WHERE liga = "1. Bundesliga"';
$res = mysql_query($sql);
$teams = array();
while (($row = mysql_fetch_assoc($res)) !== false)
$teams[] = $row['name'];
// Benötigte Variablen setzen
$anzahl = count($teams); // Anzahl der Teams
$paare = floor($anzahl / 2); // Anzahl der möglichen Spielpaare
$plan = array(); // Array für den kompletten Spielplan
$tage = ($anzahl % 2) ? count($teams) : count($teams)-1; // bei ungerader Anzahl an Teams brauchen wir einen Spieltag mehr
$base = ($anzahl % 2) ? $anzahl-2 : $anzahl-1; // die Basis für den Array-Index, bei ungerader Anzahl an Teams
// fangen wir beim vorletzten Team an
for ($tag = 1; $tag <= $tage; $tag++) {
if ($anzahl % 2) {
// letztes Element nach vorne
array_unshift($teams, array_pop($teams));
} else {
// zweites Element mit array(letztes Element, zweites Element) ersetzen,
// also letztes Element zwischen 1. und 2. Element einfügen
array_splice($teams, 1, 1, array(array_pop($teams), $teams[1]));
}
for ($spiel = 0; $spiel < $paare; $spiel++) {
$heim = $teams[$spiel];
$gast = $teams[$base-$spiel];
$plan[$tag][] = array($heim, $gast);
/* Rückrunde */
//$plan[$tag+$tage][] = array($heim, $gast);
}
}
ksort($plan);
// Spielplan ausgeben
echo "<h1>Spielplan</h1>\n";
foreach ($plan as $spieltag => $spiele) {
echo "<h2>" . $spieltag . ". Spieltag</h2>\n";
echo "<ul>\n";
foreach ($spiele as $spielnummer => $paarung) {
echo "<li>" . $paarung[0] . " - " . $paarung[1] . "</li>\n";
}
echo "</ul>\n";
}
?>
Vielen Dank im Vorraus für die Hilfe hier im Forum!