Hi
Ich habe folgendes Problem, dass ich mit einer Funktion mehrere Werte aus eine Datenbank zusammenzählen
lasse und dann ausgebe. Einzeln funktioniert das, wenn ich mit einer while Schleife alle Datensätze ausgeben
will, macht er dies zwar, zählt aber in jedem nachstehendem Datensatz vom oberen das auch dazu, warum?
Problem Erklärung:
Ich habe ein Spiel in welchem 2 Parrteien gegeneinander spielen. Die Punktezahl werden pro Runde mit Koma
getrennt in eine Datenbank geschrieben mit Name des Users.
Als Beispiel 1:
Meyer gegen Franz 119:1
Meyer 30,30,30,29 und Franz 0,0,0,1 Für 4 gespielte Runden
Als Beispiel 2:
Hans gegen Reiner 18:42
Hans 11,7 und Reiner 19,23 Für 2 gespielte Runden
Die Deteilseite pro Spiel lasse ich wiefolgt ausgeben:
Dann gibt er mir Folgendes Raus:
Soweit gut. Nun habe ich ne Seite wo ich alle Spiele anzeigen will und man drauf klickt zum Ansehen.
Das mache ich wiefolgt:
Sollte nun so aussehen:
In meinem Beispiel aber zählt er eine der zahlen, immer die letzte des oberen Datensatzes,
was in dem Fall 29 und 1 ist, zu dem Ergebniss dazu:
Ich hoffe mir kann da jemand sagen was ich falsch mache
Ich habe folgendes Problem, dass ich mit einer Funktion mehrere Werte aus eine Datenbank zusammenzählen
lasse und dann ausgebe. Einzeln funktioniert das, wenn ich mit einer while Schleife alle Datensätze ausgeben
will, macht er dies zwar, zählt aber in jedem nachstehendem Datensatz vom oberen das auch dazu, warum?
Problem Erklärung:
Ich habe ein Spiel in welchem 2 Parrteien gegeneinander spielen. Die Punktezahl werden pro Runde mit Koma
getrennt in eine Datenbank geschrieben mit Name des Users.
Als Beispiel 1:
Meyer gegen Franz 119:1
Meyer 30,30,30,29 und Franz 0,0,0,1 Für 4 gespielte Runden
Als Beispiel 2:
Hans gegen Reiner 18:42
Hans 11,7 und Reiner 19,23 Für 2 gespielte Runden
Die Deteilseite pro Spiel lasse ich wiefolgt ausgeben:
PHP:
while($s = mysql_fetch_array($spiel)){
$sp1 = explode(",",$s["sp1e"]); for($i=0; $i < count($sp1); $i++) {$sp1erg += $sp1[$i];}
$sp2 = explode(",",$s["sp2e"]); for($i=0; $i < count($sp2); $i++) {$sp2erg += $sp2[$i];}
echo'
<table clss="ergebnisse" cellpadding="0" cellspacing="0"><tr>
<tr><td> </td></tr>
<tr><td>'.$w["spieler1name"].' gegen '.$w["spieler2name"].'</td></tr>
<tr><td>'.$w["spieldatum"].' ('.$w["spielzeit"].')</td></tr>
<tr><td>'.$sp1erg.':'.$sp2erg.'</td></tr>
<tr><td> </td></tr>
</tr></table>
';
}
Dann gibt er mir Folgendes Raus:
Meyer gegen Franz
05.02.2011 (19:00)
119:1
Soweit gut. Nun habe ich ne Seite wo ich alle Spiele anzeigen will und man drauf klickt zum Ansehen.
Das mache ich wiefolgt:
PHP:
while($s = mysql_fetch_array($allespiele)){
$sp1 = explode(",",$s["sp1e"]); for($i=0; $i < count($sp1); $i++) {$sp1erg += $sp1[$i];}
$sp2 = explode(",",$s["sp2e"]); for($i=0; $i < count($sp2); $i++) {$sp2erg += $sp2[$i];}
echo'
<table clss="ergebnisse" cellpadding="0" cellspacing="0"><tr>
<tr><td> </td></tr>
<tr>
<td><a href="?p=spieldetail">Spiel: '.$w["spieler1name"].' gegen '.$w["spieler2name"].'</a></td>
<td>vom '.$w["spieldatum"].'</td>
<td>-----</td>
<td>'.$sp1erg.':'.$sp2erg.'</td>
</tr>
<tr><td> </td></tr>
</tr></table>
';
}
Sollte nun so aussehen:
Spiel: Meyer gegen Franz vom 05.02.2011 ----- 119:1
Spiel: Hans gegen Reiner vom 05.02.2011 ----- 18:42
In meinem Beispiel aber zählt er eine der zahlen, immer die letzte des oberen Datensatzes,
was in dem Fall 29 und 1 ist, zu dem Ergebniss dazu:
Spiel: Meyer gegen Franz vom 05.02.2011 ----- 119:1
Spiel: Hans gegen Reiner vom 05.02.2011 ----- 47:43 (sollte 18:42)
Ich hoffe mir kann da jemand sagen was ich falsch mache