Например получается ассоциативный массив который содержит следующие поля:
$arr["id_subject"] - id предмета;
$arr["id_group"] - id группы;
$arr["results"] - результаты;
Задача заключается в том, чтобы в таблице вывести $arr["id_subject"], $arr["id_group"] и общую сумму поля $arr["results"] для этих полей, т.е. где одинаковые значения поля $arr["id_subject"] и одинаковые значения поля $arr["id_group"].
+---------+------------+----------+
| results | id_subject | id_group |
+---------+------------+----------+
| 10 | 1 | 666 | (1)
| 12 | 1 | 666 | (2)
| 9 | 1 | 666 | (3)
| 11 | 1 | 666 | (4)
| 12 | 214 | 908745 | (5)
| 13 | 214 | 908745 | (6)
| 6 | 123 | 908745 | (7)
| 5 | 123 | 908745 | (8)
+---------+------------+----------+
Т.е. нужно подсчитать общую сумму для 1-4 строк, затем для 5-6, затем для 7-8.
У меня получается пока так, что сумма считается, но последняя строка не выводится. Подскажите как дописать.....
Код:
do {
if ((empty($id_group)) and (empty($id_subject))) {
$id_group = $ved["id_group"];
$id_subject = $ved["id_subject"];
$result = $ved["results"];
} else {
if (($id_group == $ved["id_group"]) and ($id_subject == $ved["id_subject"])) {
$result = $result + $ved["results"];
} else {
echo "<tr><td>$id_group</td><td>$id_subject</td><td>$result</td></tr>";
$id_group = $ved["id_group"];
$id_subject = $ved["id_subject"];
$result = $ved["results"];
}
}
} while ($ved = mysql_fetch_array($ved_query));