У меня проблемы с вычислением итогового результата из базы данных mysql
, я использую codeigneter
а также newbei
,
Вот мой БД:
selldate | sell
--------------
9 2014 | 20
10 2014 | 25
11 2014 | 15
$n2 = -1;
$selling = $this->db->query("select sell as Y , date_format((selldate),'%M %Y') as month from selling where id='$id' and selldate between '$dt1' and '$dt2'");
foreach ($selling->result() as $row){
$u = $n2++;
$t = $u*2+1;
$yt = $row->Y * $t;
$t2 = $t*$t;
$r = 0;
$r += $yt;
$w = 0;
$w += $t2;
?>
<tr>
<td><?php echo $row->month;?></td>
<td><?php echo $row->Y;?></td>
<td><?php echo $t;?></td>
<td><?php echo $yt;?></td>
<td><?php echo $t2;?></td>
</tr>
<?php
}; ?>
<tr>
<td></td>
<td>Grand Total</td>
<td></td>
<td><?php echo "Grand Total is $r";?></td>
<td><?php echo "Grand Total is $w";?></td>
</tr>
</table>
Проблема в $r += $yt;
а также $w +=$t2
; он рассчитывает общую сумму для таблицы.
Когда я использовал $r=0;
а также $w=0;
, тогда я получаю неправильный результат для общего итога, но когда я удаляю $r=0;
а также $w=0;
просто используйте $r+=$yt
только я получаю true
результат для общего итога, но есть сообщение об ошибке
Серьезность: Уведомление
Сообщение: неопределенная переменная: r
Как сказал Шон, вы должны поместить $ r = 0 и $ w = 0 вне цикла for и рядом с $ n2 = -1.
В настоящее время происходит каждый раз, когда цикл for повторяет $ r и $ w становится 0. Следовательно, вы получаете неправильный ответ. Это проблема. Как только вы объявите $ r и $ w как 0 снаружи, тогда все в порядке.
Других решений пока нет …