Perdonatemi se non sono stato chiaro ho un file funzioni.php al cui interno ho:

codice:
function mostraCarrello()
{
  global $db;
  $carrello = $_SESSION['carrello'];
  $somma = 0;
  if ($carrello)
  {
    $prodotti = @explode(',',$carrello);
    $acquisti = array();
    foreach ($prodotti as $prodotto)
    {
      $acquisti[$prodotto] = (@isset($acquisti[$prodotto])) ? $acquisti[$prodotto] + 1 : 1;
    }
    $result[] = '<form action="carrello.php?action=aggiorna" method="post" id="cart">';
    $result[] = '<table>';

    foreach ($acquisti as $id=>$quantita)
    {
      $sql = 'SELECT * FROM shop WHERE id = '.$id;
      $res = $db->query($sql);
      $f = $res->fetch();
      @extract($f);
      $result[] = '<tr>';
      $result[] = '<td>'.$nome.'</td>';
      $result[] = '<td>&euro;'.$prezzo.'</td>';
      $result[] = '<td><input type="text" name="quantita'.$id.'" value="'.$quantita.'" size="3"></td>';
      $result[] = '<td>&euro;'.($prezzo * $quantita).'</td><br>';
      $somma += $prezzo * $quantita;
       $result[] = '<td><a  href="carrello.php?action=cancella&id='.$id.'">Cancella</a></td><br>';
      $result[] = '</tr>';
    }

    $result[] = '</table>';
    $result[] = 'Totale: <b>&euro;'.$somma.'</b></br><br>';
    $result[] = '<button type="submit">Aggiorna il carrello</button>';
    $result[] = '</form>';
  }else{
    $result[] = 'Il carrello è vuoto.<br>';
  }
  return @join('',$result);
}
lo richiamo nella pagina dove visualizzo il carrello con echo mostraCarrello(); e tutto ok

ora ho creato un altro file che dovrebbe inviare mail con i dati di chi acquista, il nome del prodotto e la quantita di esso acquistata nonchè prezzo finale tutti contenuti in questa funzione di calcolo scritta sopra..

io inizialmente ho provato a mettere:

$ordine = mostraCarrello($result);

che mi immette il contenuto di tutta la funzione e potrebbe anche andare bene ma nella mail arriva in codice html in questo modo:

Dettaglio ordine: <form action="carrello.php?action=aggiorna" method="post" id="cart"><table><tr><td>Frisa di orzo con condimento</td><td>&euro;2.97</td><td><input type="text" name="quantita2" value="13" size="3"></td><td>&euro;38.61</td><br><td><a ="carrello.php?action=cancella&id=2">Cancella</a></td><br></tr></table>Totale: <b>&euro;38.61</b></br><br><button type="submit">Aggiorna il carrello</button></form>

ho provato a mettere al posto di result

$ordine = mostraCarrello($nome,$quantita,$somma);

ma il risultato non cambia..