我試圖從我的表中的一個coloumns的字母等級中打印出平均成績。它適用於前兩個輸入,但在此之後,當我繼續添加平均值不再是真實的時候,我不確定發生了什麼。試圖使用mysql和php打印平均等級
* I relize這個心不是最乾淨的代碼
$totalGrade =0;
$result = mysqli_query($con,"SELECT id,grade FROM gpa");
while ($row = mysqli_fetch_array($result)) {
if($row['grade'] == 'A') {
$numberGrade = 4;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'A-') {
$numberGrade = 3.67;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'B+') {
$numberGrade = 3.33;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'B') {
$numberGrade = 3;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'B-') {
$numberGrade = 2.67;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'C+') {
$numberGrade = 2.33;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'C') {
$numberGrade = 2;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'C-') {
$numberGrade = 1.67;
$totalGrade = ($totalGrade + $numberGrade);
} if ($row['grade'] == 'D') {
$numberGrade = 1;
$totalGrade = ($totalGrade + $numberGrade);
} else {
$numberGrade = 0;
$totalGrade = ($totalGrade + $numberGrade);
}
$totalGrade = $totalGrade/$row['id'];
}
你可能想查看[switch](http://php.net/manual/en/control-structures.switch.php)語句.. 。看起來很容易/管理 –