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);
?>