C'est parce que pour l'itération, vous remplacez le contenu de $html2
. Vous devrez ajouter le contenu à la place.
Alors prenez le $html2
vide variable en dehors de la boucle et ajoutez le résultat au fur et à mesure que vous parcourez la boucle.
Le code ressemblerait à ceci,
$html2="";
while($row = mysqli_fetch_array($result)){
$pr = $row['product'];
$dr = $row['description'];
$qty = $row['qty'];
$total = $row['total'];
$html2 = $html2."<tr>
<td>".$i."</td>
<td>".$pr."</td>
<td>".$dr."</td>
<td>".$qty."</td>
<td>".$total."</td>
</tr>";
$i++;
}