-2
我試圖從我已經存儲值的數據庫中讀取。我試圖在每一天添加所有的值,並編寫了下面的代碼來實現這一點。出於某種原因,只有第一天的行正在被總結。我確信有一個原因,我的一個循環的條件不起作用,但我想我是在看它。任何快速瀏覽讚賞。好奇爲什麼循環不顯示第二天的數據:
$readsum =array();
$totalsum = 0;
for ($i=1; $i <= $numdays; $i++){
$readresult=mysql_query("SELECT * FROM `test`.`cost_table` WHERE `Day`='$i'",$LinkID);
while($rows=mysql_fetch_array($readresult)){
$readsum[]=$rows['Yield'];
$readsum[]=$rows['Rolls'];
$readsum[]=$rows['Utilities'];
$readsum[]=$rows['Payroll'];
$readsum[]=$rows['Direct Materials'];
$readsum[]=$rows['3rd Party'];
$readsum[]=$rows['Supplies'];
$readsum[]=$rows['Packaging'];
$readsum[]=$rows['Rental'];
$readsum[]=$rows['Other'];
}
for($i=0; $i <= 9; $i++){
$totalsum = $totalsum + $readsum[$i];
}
echo $totalsum;
$totalsum = 0;
}
現在,輸出只有一個值;數據庫第一行的總和。作爲本月的第二天,它應該計算第二筆金額並回應它。
您在兩個循環中都使用迭代器('$ i')的相同變量名稱。這可能會導致問題。此外,你不應該在循環中查詢。你應該查詢整個集合,然後遍歷結果。 – dan08 2015-04-02 19:38:50
^您還需要查看縮進。可能你忘了第二個'for'循環由於缺少縮進而在另一'for for循環中。 – developerwjk 2015-04-02 19:56:43