Ich würde dafür zwei Datenbanktabellen anlegen:
1. teams
ID
name //VEREINSNAME
(Es können natürlich auch weitere Informationen wie Gründungsjahr etc. abgespeichert werden.)
2. spiele
ID
spieltag
HID //ID MANNSCHAFT 2
AID //ID MANNSCHAFT 1
toreH //GESCHOSSENE TORE MANNSCHAFT 1
toreA //GESCHOSSENE TORE MANNSCHAFT 2
Das Eintragen und die Ausgabe von Spieltagen sollte so kein Problem sein.
Jetzt zur
Tabelle:
PHP-Code:
//TEAMNAMEN MIT ZUGEHÖRIGER ID IN ARRAY SPEICHERN
$result=mysql_query("SELECT ID, name FROM teams ORDER BY ID");
while($row=mysql_fetch_array($result)){
$team[$row['ID']]=$row['name'];
$tabelle[$row['ID']]['punkte']=0;
$tabelle[$row['ID']]['tore']=0;
$tabelle[$row['ID']]['gegentore']=0;
}
$result=mysql_query("SELECT HID, AID, toreH, toreA FROM spiele ORDER BY ID");
while($row=mysql_fetch_array($result)){
$tabelle[$row['HID']]['tore']=$tabelle[$row['HID']]['tore']+$row['toreH'];
$tabelle[$row['AID']]['tore']=$tabelle[$row['AID']]['tore']+$row['toreA'];
$tabelle[$row['HID']]['gegentore']=$tabelle[$row['HID']]['gegentore']+$row['toreA'];
$tabelle[$row['AID']]['gegentore']=$tabelle[$row['AID']]['gegentore']+$row['toreH'];
//SIEG DER HEIMMANNSCHAFT
if($row['toreH']>$row['toreA']){
$tabelle[$row['HID']]['punkte]=$tabelle[$row['HID']]['punkte']+3;
}
//SIEG DER GASTMANNSCHAFT
if($row['toreH']<$row['toreA']){
$tabelle[$row['AID']]['punkte]=$tabelle[$row['AID']]['punkte']+3;
}
//UNENTSCHIEDEN
if($row['toreH']==$row['toreA']){
$tabelle[$row['HID']]['punkte]=$tabelle[$row['HID']]['punkte']+1;
$tabelle[$row['AID']]['punkte]=$tabelle[$row['AID']]['punkte']+1;
}
}
foreach($tabelle as $ID => $row){
$punkte[$ID]=$row['punkte'];
$tore[$ID]=$row['tore'];
$gegentore[$ID]=$row['gegentore'];
$differenz[$ID]=$row['tore']-$row['gegentore'];
}
array_multisort($punkte, SORT_DESC, $differenz, SORT_DESC, $tore, SORT_DESC, $tabelle);
Die Sortierung ist dann erfolgt. Die Ausgabe mit einer foreach Schleife sollte dann auch kein Problem mehr darstellen.
Interessant dürfte hier die Funktionsbeschreibung von
array_multisort und speziell der Beitrag vom 30-Jan-2004 07:57 sein.
Wenn bei der Sortierung der
Tabelle auch der direkte Vergleich berücksichtigt werden soll, schaut euch das mal an:
http://www.selfphp.info/forum/showth...5830#post45830