Invio E-Mail con la notifica degli ordini effettuati

victor73

Nuovo Utente
12 Mar 2012
2
0
0
Salve a tutti spero che qualcuno possa aiutarmi. Sono riuscito a creare da vari sript scaricati via rete un carrello della spesa perfettamente funzionante, con tanto di elenco prodotti caricati su MySql
Con la funzione writeShoppingCart e showCart ottengo il carrello ma non riesco ad inviarlo via mail, ho provato con echo cart ma mi arriva solo id prodotto (1,4,3,7,8).
Spero che qualcuno possa aiutarmi!

ecco la pagina
PHP:
?php
// Include MySQL class
require_once('inc/mysql.class.php');
// Include database connection
require_once('inc/global.inc.php');
// Include functions
require_once('inc/functions.inc.php');
// Start the session
session_start();
// Process actions
$cart = $_SESSION['cart'];
$action = $_GET['action'];
switch ($action) {
	case 'add':
		if ($cart) {
			$cart .= ','.$_GET['id'];
		} else {
			$cart = $_GET['id'];
		}
		break;
	case 'delete':
		if ($cart) {
			$items = explode(',',$cart);
			$newcart = '';
			foreach ($items as $item) {
				if ($_GET['id'] != $item) {
					if ($newcart != '') {
						$newcart .= ','.$item;
					} else {
						$newcart = $item;
					}
				}
			}
			$cart = $newcart;
		}
		break;
	case 'update':
	if ($cart) {
		$newcart = '';
		foreach ($_POST as $key=>$value) {
			if (stristr($key,'qty')) {
				$id = str_replace('qty','',$key);
				$items = ($newcart != '') ? explode(',',$newcart) : explode(',',$cart);
				$newcart = '';
				foreach ($items as $item) {
					if ($id != $item) {
						if ($newcart != '') {
							$newcart .= ','.$item;
						} else {
							$newcart = $item;
						}
					}
				}
				for ($i=1;$i<=$value;$i++) {
					if ($newcart != '') {
						$newcart .= ','.$id;
					} else {
						$newcart = $id;
					}
				}
			}
		}
	}
	$cart = $newcart;
	break;
}
$_SESSION['cart'] = $cart;
?>

<?php
echo writeShoppingCart();
?>
<?php
echo showCart();
?>
<?php
echo $total;
?>
 
Grazie per la risposta

questo è la struttura del database:
Codice:
CREATE TABLE menu (
Id INT(11) NOT NULL PRIMARY KEY,
prodotto VARCHAR(255),
ingrediente VARCHAR(255),
prezzo decimal(10,2)

);

qui il file function.php
PHP:
<?php
function writeShoppingCart() {
	$cart = $_SESSION['cart'];
	if (!$cart) {
		return '<p>Non hai nessun prodotto nel carrello</p>';
	} else {
		// Parse the cart session variable
		$items = explode(',',$cart);
		$s = (count($items) > 1) ? '/i':'';
		return '<p>Tu hai <a href="pagina1.php">'.count($items).' prodotto'.$s.' nel tuo carrello della spesa</a></p>';
	}
}

function showCart() {
	global $db;
	$cart = $_SESSION['cart'];
	if ($cart) {
		$items = explode(',',$cart);
		$contents = array();
		foreach ($items as $item) {
			$contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1 : 1;
		}
		$output[] = '<form action="?action=update" method="post" id="cart">';
		$output[] = '<table>';
		foreach ($contents as $id=>$qty) {
			$sql = 'SELECT * FROM menu WHERE id = '.$id;
			$result = $db->query($sql);
			$row = $result->fetch();
			extract($row);
			$output[] = '<tr>';
			$output[] = '<td><a href="?action=delete&id='.$id.'" class="r">Cancella</a></td>';
			$output[] = '<td><strong><font color="#FF00">'.$prodotto.'</font></strong><br/><font color="#8C8C8C">'.$ingredienti.'</font></td>';
			$output[] = '<td>&euro;'.$prezzo.'</td>';
			$output[] = '<td><input type="text" name="qty'.$id.'" value="'.$qty.'" size="3" maxlength="3" /></td>';
			$output[] = '<td>&euro;'.($prezzo * $qty).'</td>';
			$total += $prezzo * $qty;
			$output[] = '</tr>';
		}
		$output[] = '</table><br/>';
		$output[] = '<p>Somma totale: <strong>&euro;'.$total.'</strong></p>';
		$output[] = '<div><input type="submit" value="aggiorna carrello" /></div>';
		$output[] = '</form>';
	} else {
		$output[] = '<p>Carrello vuoto.</p>';
	}
	return join('',$output);
}
?>

spero che tu possa aiutarmi!
 

Discussioni simili