buona estate a tutti,

oggi ho provato ad implementare il codice riportato di seguito
Codice PHP:
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;
    }
    
$result[] = '<form action="carrello.php?action=aggiorna" method="post" id="cart">';
    
$result[] = '<table>';

    foreach (
$acquisti as $id=>$quantita)
    {
      
$sql 'SELECT * FROM prodotti WHERE id = '.$id;
      
$res $db->query($sql);
      
$f $res->fetch();
      @
extract($f);
      
$result[] = '<tr>';
      
$result[] = '<td>[url="carrello.php?action=cancella&id='.$id.'"]Cancella[/url]</td>';
      
$result[] = '<td>'.$nome.' by '.$descrizione.'</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>';
      
$result[] = '<td>contenuto'$carrello .'</td>';
      
$subsomma += ($prezzo $quantita)*20/100;
      
$result[] = '<td>- 20%--> &euro;'.(($prezzo $quantita)-$subsomma).'</td>';
      
$somma += $prezzo $quantita;
      
$result[] = '</tr>';
    }

    
$result[] = '</table>';
    
$result[] = 'Totale: [b]&euro;'.($somma-$subsomma).'[/b]</br>';
    
$result[] = '<button type="submit">Aggiorna il carrello</button>';
    
$result[] = '</form>';
  }else{
    
$result[] = 'Il carrello è vuoto.
'
;
  }
  return @
join('',$result);
}
?> 
ma non riesco a far registrare tutti i dati contenuti nella sessione su un db

se provo
Codice PHP:
//Apro la sessione e...
session_start();

//Recupero i dati...
$carrello $_SESSION['carrello'];

//facciamo una stampata a video!
echo "$carrello"
il risultato sarà: 1,1,1
praticamente l'id ripetuto tante volte quanto la quantità immessa.

a me serve invece intabellare: quantità|nome|descrizione|totale

come posso muovermi? lo script per esteso è tratto da qui e mi sembra un ottimo script ma senza questa funzione è un problema...

grazie a tutti, daniele.