Domi741
Mitglied
Hallo zusammen,
zur Zeit arbeite ich an einer Web-APP mit jQueryMobile. Nun stoße ich grade auf ein Problem.
Die WebAPP ist für eine Fussball-Mannschaft hier aus dem Verein, dort werden Spieler angelegt und können sich dann zu den anstehenden Spielen anmelden. Während das Spiels können die Tore eingetragen werden und auch der Torschütze, sofern es ein eigener Spieler ist, beim Gegner wird nur die Mannschaft angegeben.
Nun soll das ganze in einer Statistik ausgegeben werden und die 3 Spieler mit den meisten Toren kriegen eine kleine Medaille vor Ihren Namen, was auch im ganzen funktioniert. Nun gibt es ein Problem sobald mehr wie 1 Spieler die gleiche Toranzahl hat.
Ein Beispiel wie es zur Zeit ist:
Spieler 1 - 20 Tore - Gold
Spieler 2 - 20 Tore - Silber
Spieler 3 - 18 Tore - Bronze
Spieler 4 - 18 Tore - NICHTS
Spieler 5 - 15 Tore - NICHTS
Spieler 6 - 12 Tore - Nicht
Dabei wäre es schön wenn es wie folgt aussieht:
Spieler 1 - 20 Tore - Gold
Spieler 2 - 20 Tore - Gold
Spieler 3 - 18 Tore - Silber
Spieler 4 - 18 Tore - Silber
Spieler 5 - 15 Tore - Bronze
Spieler 6 - 12 Tore - Nichts
Meine Datenbank dazu sieht wie folgt aus:
Tabelle user - die Spieler mit u.a. folgenden Feldern: user_id, user_name
Tabelle spiel_tore - die geschossenen Tore mit folgenden Feldern: tor_id, user_id, spiel_id (Tore der Gegner werden mit der ID 9999 bei user_id eingetragen, ansonsten die user_id des Spielers aus der Tabelle user)
Tabelle spiele - die Spiele, mit u.a. folgenden Feldern spiel_id, spiel_typ (in der Statistik ist nur Spiel Typ 1 wichtig!)
Habt ihr eine Idee wie das ganze realisiert werden kann?
Habe mal meinen aktuellen Quellcode für euch hier reinkopiert, damit ihr seht wie ich das zur Zeit mache. (Lässt sich sicher auch noch optimieren... )
Wenn noch verständnis Fragen da sind beantworte ich diese gerne. Ich hoffe ihr könnt mir helfen =)
Lg Dominic
zur Zeit arbeite ich an einer Web-APP mit jQueryMobile. Nun stoße ich grade auf ein Problem.
Die WebAPP ist für eine Fussball-Mannschaft hier aus dem Verein, dort werden Spieler angelegt und können sich dann zu den anstehenden Spielen anmelden. Während das Spiels können die Tore eingetragen werden und auch der Torschütze, sofern es ein eigener Spieler ist, beim Gegner wird nur die Mannschaft angegeben.
Nun soll das ganze in einer Statistik ausgegeben werden und die 3 Spieler mit den meisten Toren kriegen eine kleine Medaille vor Ihren Namen, was auch im ganzen funktioniert. Nun gibt es ein Problem sobald mehr wie 1 Spieler die gleiche Toranzahl hat.
Ein Beispiel wie es zur Zeit ist:
Spieler 1 - 20 Tore - Gold
Spieler 2 - 20 Tore - Silber
Spieler 3 - 18 Tore - Bronze
Spieler 4 - 18 Tore - NICHTS
Spieler 5 - 15 Tore - NICHTS
Spieler 6 - 12 Tore - Nicht
Dabei wäre es schön wenn es wie folgt aussieht:
Spieler 1 - 20 Tore - Gold
Spieler 2 - 20 Tore - Gold
Spieler 3 - 18 Tore - Silber
Spieler 4 - 18 Tore - Silber
Spieler 5 - 15 Tore - Bronze
Spieler 6 - 12 Tore - Nichts
Meine Datenbank dazu sieht wie folgt aus:
Tabelle user - die Spieler mit u.a. folgenden Feldern: user_id, user_name
Tabelle spiel_tore - die geschossenen Tore mit folgenden Feldern: tor_id, user_id, spiel_id (Tore der Gegner werden mit der ID 9999 bei user_id eingetragen, ansonsten die user_id des Spielers aus der Tabelle user)
Tabelle spiele - die Spiele, mit u.a. folgenden Feldern spiel_id, spiel_typ (in der Statistik ist nur Spiel Typ 1 wichtig!)
PHP:
$getUserInfo = $db1->query("SELECT user_id, user_prename, user_name FROM ".$prefix."users WHERE user_right='1' AND user_blocked='0' ORDER BY user_name ASC, user_prename ASC");
while($userInfo = $db1->daten($getUserInfo)) {
$userInfo_cache[] = $userInfo;
}
if (is_array($userInfo_cache)) {
$anzahlUser = count($userInfo_cache);
$goalStats = array();
for($actUser=0;$actUser<$anzahlUser;$actUser++) {
$db3->query("SELECT COUNT(*) FROM ".$prefix."spiel_tore JOIN ".$prefix."spiele ON ".$prefix."spiel_tore.spiel_id=".$prefix."spiele.spiel_id WHERE ".$prefix."spiel_tore.user_id='".intval($userInfo_cache[$actUser]['user_id'])."' AND ".$prefix."spiele.spiel_typ='1' AND ".$prefix."spiele.spiel_saison='".$aktSaison."'");
list($goalStats[$actUser]['tore']) = $db3->daten();
$goalStats[$actUser]['name'] = stripslashes(utf8_encode($userInfo_cache[$actUser]['user_prename']))." ".substr(stripslashes($userInfo_cache[$actUser]['user_name']),0,1).".";
unset($userInfo_cache[$actUser]);
}
if (is_array($goalStats)) {
rsort($goalStats);
$counter=1;
foreach ($goalStats as $goalEntry) {
if($goalEntry['tore']>0) {
if($counter==1) {
$img='<img src="./images/medal_gold.png" alt="Gold" class="ui-li-icon">';
} elseif($counter==2) {
$img='<img src="./images/medal_silver.png" alt="Silber" class="ui-li-icon">';
} elseif($counter==3) {
$img='<img src="./images/medal_bronze.png" alt="Bronze" class="ui-li-icon">';
} else {
unset($img);
}
} else {
unset($img);
}
$goal_row.='<li>'.$img.$goalEntry['name'].' <span class="ui-li-count">'.$goalEntry['tore'].'</span></li>';
$counter++;
}
}
$statsTable='<ul data-role="listview" data-inset="true">'.$goal_row.'</ul>';
}
Habt ihr eine Idee wie das ganze realisiert werden kann?
Habe mal meinen aktuellen Quellcode für euch hier reinkopiert, damit ihr seht wie ich das zur Zeit mache. (Lässt sich sicher auch noch optimieren... )
Wenn noch verständnis Fragen da sind beantworte ich diese gerne. Ich hoffe ihr könnt mir helfen =)
Lg Dominic