неверный результат при использовании операторов присваивания в codeigneter

У меня проблемы с вычислением итогового результата из базы данных 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

0

Решение

Как сказал Шон, вы должны поместить $ r = 0 и $ w = 0 вне цикла for и рядом с $ n2 = -1.

В настоящее время происходит каждый раз, когда цикл for повторяет $ r и $ w становится 0. Следовательно, вы получаете неправильный ответ. Это проблема. Как только вы объявите $ r и $ w как 0 снаружи, тогда все в порядке.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]