Dato che stai già ordinando il risultato per prodotto, potresti fare qualcosa del genere:
$currentProduct = null;
foreach($products as $product) {
if ($currentProduct != $product['product']) {
// We got a new product. Show it with some fancy html
// Then store it in $currentProduct for the next iteration
$currentProduct = $product['product'];
}
// Show the title with some fancy html
}
Se vuoi usare il tuo do while
esistente -loop invece, è lo stesso.