2017-07-27 3 views
1

Ich habe diesen Code, und ich möchte Gesamtkombination aller KategorienErste insgesamt von mysql Abfrage mit Array

meinen Code bekommen, so weit

 for ($k = 0; $k < 4; $k++) { 

    $result= $DB->query("SELECT total FROM ".$DB->prefix("mystat")." WHERE year='$year' AND category='$categoryname[$k]'"); 
       $row = $DB->fetchArray($result); 
      $total=$row['total']; 
echo $total++; 
    } 

sagen wir mal ich diese Daten haben

A - 1 
B - 2 
C - 3 

meine aktuelle Ausgabe

123 

meine gewünschte Ausgabe

6 

Wie kann ich das korrigieren?

+1

https://stackoverflow.com/questions/1496682/how-to-sum-values-of-the-array-of-the-same-key bitte sehen Sie sich das an. das kann dir helfen. –

Antwort

1

Es ist, weil Sie Echo in Schleife tun. Und auch deine Logik ist falsch. ändern Sie Ihren Code wie:

$total = 0; 
for ($k = 0; $k < 4; $k++) { 
    $result= $DB->query("SELECT total FROM ".$DB->prefix("mystat")." WHERE year='$year' AND category='$categoryname[$k]'"); 
    $row = $DB->fetchArray($result); 
    $total +=$row['total']; 
} 
echo $total; // DO echo here 

Auch wenn Sie Kategorien und insgesamt nicht separat benötigen und nur brauchen Summe aller dann ist es besser zu nutzen SUM mit group by Kategorie in SQL.

+0

Vielen Dank – gtroop