Non ti sembra un pò troppa roba per un post solo?
Vai per gradi: passare tramite form i prodotti da inviare per email:
Estraendo i dati dal database crea anche una variabile che li contenga tutti:
Codice PHP:
<?
//crei la variabile contenitore
$prodotti='';

//poi estrai tutti i prodotti da mostrare nella pagina con il ciclo while
while ($riga=mysql_fetch_array($Risultato)) 
        { 
        
$prodotto="<div>prodotto" $riga[4] . "prezzo" $riga[1] . "</div>"
        echo 
$prodotto;
        
$prodotti.=$prodotto;
        } 

//fatto ciò inserisci il tutto in un campo nascosto nel tuo form (fallo tramite post, è più sicuro)
?>
<form action="invio.php" method='post'> 
Nome:<input type="text" name="nome">
 
Cognome:<input type="text" name="cognome">
 

<input type='hidden' name='prodotti' value='<?=$prodotti?>' />


<input type="submit" value=" Invio "> 
</form>
<?
//così ti ritroverai nella pagina invio.php la variabile prodotti con i prodotti, in formato html, da poter inviare. Se li vuoi in formato testo cambia la terza riga nel ciclo while come preferisci

 
<?php 
mysql_connect
($host,$user,$pass); 
$mail "mia@email.com"
$oggetto "email"
$testo "nome: ".$_POST['nome'].
Cognome: "
.$_POST['cognome']."
Prodotti: "
.$_POST['prodotti']; 
//correggi la virgola nella query dopo nome così e chiudilo con le doppie virgolette
mysql_query("INSERT INTO nome_db.nome_tabella SET nome='".$nome."', cognome= '".$cognome."')"
mail($mail,$oggetto,$testo); 
?>