A continuacion les dejo el codigo completo por si a alguien le sirve:
producto.php
Código PHP:
<?
include("lib_carrito.php");
?>
<html>
<head>
<title>Trabajando con el carrito</title>
</head>
<body>
<div align="center">
<table width="740" border="0" align="center">
<tr>
<td><div align="center">
<p> </p>
<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="ver_carrito.php">ver
carrito</a> </font></p>
<p> </p>
<p> </p>
<form name="form1" method="post" action="">
<table width="740" border="0">
<tr>
<td width="526" rowspan="2" align="center" valign="middle"><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">imagen
de la remera</font></div></td>
<td width="198"><p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nombre
de la remera</strong><br>
Pequeña descripcción:<br>
<br>
Precio: $35</font></p>
<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Elegir
Talle: <br>
<select name="talle" id="select2">
<option value=" Talle S (small)">S (small)</option>
<option value=" Talle M (medium)">M (medium)</option>
<option value=" Talle L (large)">L (large)</option>
<option value=" Talle XL (extra large)">XL (extra large)</option>
</select>
(ver talles) </font></p>
<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Elegir
Color:<br>
<select name="color" id="select3">
<option value=" color negro">negro</option>
<option value=" color blanco">blanco</option>
<option value=" color rojo">rojo</option>
<option value=" color amarillo">amarillo</option>
<option value=" color naranja">naranja</option>
<option value=" color verde">verde</option>
</select>
</font></p>
<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Cantidad:
<input type="value" name="agregar1" value="1" size="3">
<br>
<br>
</font></p></td>
</tr>
<tr>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<a href='mete_producto.php?id=12 & nombre=Buitre Team & talle=document.itemsform.talle.value & color=document.itemsform.color.value & precio=35'>
Agregar al Carrito</a></font></div></td>
</tr>
</table>
</form>
<p><br>
<br>
</p>
</div></td>
</tr>
</table>
</div>
</body>
</html>
mete_producto.php
Código PHP:
<?
include("lib_carrito.php");
$_SESSION["ocarrito"]->introduce_producto($_GET["id"], $_GET["nombre"], $_GET["talle"], $_GET["color"], $_GET["precio"]);
?>
<html>
<head>
<title>Introduce Producto</title>
</head>
<body>
<div align="center"></div>
<table width="740" border="0" align="center">
<tr>
<td align="center"><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Producto
introducido. <br>
<br>
<a href="index.php">Volver</a> <br>
<br>
<a href="ver_carrito.php">Ver carrito</a> </font></div>
</td>
</tr>
</table>
<div align="center"></div>
</body>
</html>
ver_carrito.php
Código PHP:
<?
include("lib_carrito.php");
?>
<html>
<head>
<title>Introduce Producto</title>
<style type="text/css">
.body {
font-family: Verdana;
font-size: 10pt;
font-style: normal;
font-weight: normal;
font-variant: normal;
color: #000000;
}
.td {
font-family: Verdana;
font-size: 10pt;
font-style: normal;
line-height: normal;
font-weight: normal;
font-variant: normal;
color: #000000;
}
</style>
</head>
<body>
<table width="740" border="0" align="center">
<tr>
<td align="center">
<?
$_SESSION["ocarrito"]->imprime_carrito();
?>
<p align="center"><br>
</p>
<p align="center"><a href="formulario.php"><font size="2" face="Verdana">Hacer
compra</font></a><font size="2" face="Verdana"><br>
<a href="index.php">Volver</a> </font></p>
</td>
</tr>
</table>
<p> </p>
</body>
</html>
lil_carrito.php
Código PHP:
<?
class carrito {
//atributos de la clase
var $num_productos;
var $array_id_prod;
var $array_nombre_prod;
var $array_talle_prod;
var $array_color_prod;
var $array_precio_prod;
//constructor. Realiza las tareas de inicializar los objetos cuando se instancian
//inicializa el numero de productos a 0
function carrito () {
$this->num_productos=0;
}
//Introduce un producto en el carrito. Recibe los datos del producto
//Se encarga de introducir los datos en los arrays del objeto carrito
//luego aumenta en 1 el numero de productos
function introduce_producto($id_prod,$nombre_prod,$talle_prod,$color_prod,$precio_prod){
$this->array_id_prod[$this->num_productos]=$id_prod;
$this->array_nombre_prod[$this->num_productos]=$nombre_prod;
$this->array_talle_prod[$this->num_productos]=$talle_prod;
$this->array_color_prod[$this->num_productos]=$color_prod;
$this->array_precio_prod[$this->num_productos]=$precio_prod;
$this->num_productos++;
}
//Muestra el contenido del carrito de la compra
//ademas pone los enlaces para eliminar un producto del carrito
function imprime_carrito(){
$suma = 0;
echo '<table border=1 cellpadding="3">
<tr>
<td><b>Nombre producto</b></td>
<td><b>Talle</b></td>
<td><b>Color</b></td>
<td><b>Precio</b></td>
<td> </td>
</tr>';
for ($i=0;$i<$this->num_productos;$i++){
if($this->array_id_prod[$i]!=0){
echo '<tr>';
echo "<td>" . $this->array_nombre_prod[$i] . "</td>";
echo "<td>" . $this->array_talle_prod[$i] . "</td>";
echo "<td>" . $this->array_color_prod[$i] . "</td>";
echo "<td>" . $this->array_precio_prod[$i] . "</td>";
echo "<td><a href='eliminar_producto.php?linea=$i'>Eliminar producto</td>";
echo '</tr>';
$suma += $this->array_precio_prod[$i];
}
}
//muestro el total
echo "<tr> <td><b>TOTAL:</b></td> <td> </td> <td> </td> <td><b>$suma</b></td> <td> </td> </tr>";
//total más IVA
echo "<tr> <td><b>IVA (16%):</b></td> <td> </td> <td> </td> <td><b>" . $suma * 1.16 . "</b></td> <td> </td> </tr>";
echo "</table>";
}
// gemera el carrito para mandar por mail
function _genera_carrito(){
$suma = 0;
$carrito = '<table border=1 cellpadding="3">
<tr>
<td><b>Nombre producto</b></td>
<td><b>Precio</b></td>
</tr>';
for ($i=0;$i<$this->num_productos;$i++){
if($this->array_id_prod[$i]!=0){
$carrito .= '<tr>';
$carrito .= "<td>" . $this->array_nombre_prod[$i] . "</td>";
$carrito .= "<td>" . $this->array_talle_prod[$i] . "</td>";
$carrito .= "<td>" . $this->array_color_prod[$i] . "</td>";
$carrito .= "<td>" . $this->array_precio_prod[$i] . "</td>";
$carrito .= '</tr>';
$suma += $this->array_precio_prod[$i];
}
}
//muestro el total
$carrito .= "<tr> <td><b>TOTAL:</b></td> <td> </td> <td> </td> <td><b>$suma</b></td> </tr>";
//total más IVA
$carrito .= "<tr> <td><b>IVA (21%):</b></td> <td> </td> <td> </td> <td><b>" . $suma * 1.21 . "</b></td> </tr>";
$carrito .= "</table>";
// devolver el resultado al llamarse.
return $carrito;
}
//manda el mail con el carrito generado
function enviar_email($de,$para,$asunto,$nombre,$comentario){
// Componer el cuerpo del mensaje .. añade tus "cabeceras y pié" del mismo si corresponde + lo que el método "_genera_carrito()" ya hace por sí solo.
$msg = "<b>Solicitud Cotización</b><br><br>";
$msg .= "<br>";
$msg .= "Nombre: " . $nombre . "<br>";
$msg .= "Email: " . $de . "<br>";
$msg .= "Comentarios: " . $comentario . "<br>";
$msg .= "<br>";
$msg .= $this->_genera_carrito()."<br><br>";
$msg .= "Fecha solicitud: ".date ("d/m/Y H:i:s"). "<br>";
$msg .= "Desde IP:".$_SERVER['REMOTE_ADDR']."<br>";
// Cabeceras que definen que el e-mail es de formato HTML.
$cabeceras = 'MIME-Version: 1.0' . "\r\n";
$cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$cabeceras .= 'From: '. $de . "\r\n";
$cabeceras .= 'CC: '. $de . "\r\n";
mail($para,$asunto,$msg,$cabeceras);
}
//elimina un producto del carrito. recibe la linea del carrito que debe eliminar
//no lo elimina realmente, simplemente pone a cero el id, para saber que esta en estado retirado
function elimina_producto($linea){
$this->array_id_prod[$linea]=0;
}
}
//inicio la sesión
session_start();
//si no esta creado el objeto carrito en la sesion, lo creo
if (!isset($_SESSION["ocarrito"])){
$_SESSION["ocarrito"] = new carrito();
}
?>