Perdonatemi se non sono stato chiaro ho un file funzioni.php al cui interno ho:
lo richiamo nella pagina dove visualizzo il carrello con echo mostraCarrello(); e tutto okcodice: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>€'.$prezzo.'</td>'; $result[] = '<td><input type="text" name="quantita'.$id.'" value="'.$quantita.'" size="3"></td>'; $result[] = '<td>€'.($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>€'.$somma.'</b></br><br>'; $result[] = '<button type="submit">Aggiorna il carrello</button>'; $result[] = '</form>'; }else{ $result[] = 'Il carrello è vuoto.<br>'; } return @join('',$result); }
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>€2.97</td><td><input type="text" name="quantita2" value="13" size="3"></td><td>€38.61</td><br><td><a ="carrello.php?action=cancella&id=2">Cancella</a></td><br></tr></table>Totale: <b>€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..

Rispondi quotando