我在while循环中的总和值有问题。 因此,我有一个数据库,其中的行具有相同的产品名称,但是数量不同,标识和价格不同。 当我执行while循环时,它会打印每种产品,但我只想打印一种并求和。
结果是11123
,而不是8
。
这是我的代码:
$found = 1;
while($stmt->fetch()){
if(!($data3['Prod_price'] == '0' || $data3['Prod_name'] == ' Acne Cream')) {
$price = $data3['Prod_total'] - ($data3['Prod_total'] *($data3['Discount']/100));
$qty = $data3['Vial_type'] == " 50 Tablete" ? $data3['Prod_qty'] / 2 : $data3['Prod_qty'];
if($data3['Prod_name'] == ' Antioxidant Star'){
if($found==1){ // this is for showing only one product with same name
$found++;
// here should be summed quantity divided by target (to extract the percentage)
$andioxidtrg = $qty / $data2['Trg_antioxidant'];
// here shold be the quantity
$andioxidqty = $qty;
echo 'Antioxidant Star: '.$andioxidqty.' din '.$data2['Trg_antioxidant'].' ('.round( $andioxidtrg * 100 )."%)<br>";
}
}
}
}
答案 0 :(得分:1)
如果要求和然后求和,则只需覆盖值即可。
$andioxidqty += $qty; // notice the +
编辑:这意味着您还需要在循环上方添加一行:$andioxidqty =0;
,否则您将在第一次迭代时得到通知