Bạn có thể duy trì một số trạng thái trong khi lặp lại để theo dõi xem hàng hiện tại có phải là tên mới hay không:
$last_name_seen = NULL;
while ($row = mysql_fetch_array($result)) {
$firstname = "";
$payable = "";
if ($last_name_seen === NULL || $row['firstname'] != $last_name_seen) {
$last_name_seen = $row['firstname'];
$firstname = $row['firstname'];
$payable = $row['payable'];
}
echo '<tr>';
echo '<td style="border: 1px solid black;">'.$firstname.'</td>';
echo '<td>'.$payable.'</td>';
echo '<td>'.$row['product'].'</td>';
echo '<td>'.$row['qty'].'</td>';
echo '</tr>';
}
Lưu ý rằng truy vấn MySQL của bạn phải có một số ORDER BY
, để tạo thứ tự bạn muốn, ví dụ:
ORDER BY Name, Product;
Như các nhận xét ở trên cũng cho thấy, nếu bạn đang sử dụng API PHP không được dùng nữa, bạn nên xem xét nâng cấp lên thứ gì đó hiện đại hơn. Tuy nhiên, logic được sử dụng trong vòng lặp trên sẽ không thay đổi nhiều khi thay đổi MySQL API.