Foros del Web » Programando para Internet » PHP »

Carrito de compras en PHP

Estas en el tema de Carrito de compras en PHP en el foro de PHP en Foros del Web. El carrito de compras tiene 3 paginas diferentes. agregar.php //Es donde se escoge el producto, costo y cantidad consultar.php //Muestra los productos escogidos vaciar.php //Vacia ...
  #1 (permalink)  
Antiguo 07/04/2010, 09:21
Avatar de amblenias  
Fecha de Ingreso: abril-2010
Ubicación: en mi casa
Mensajes: 2
Antigüedad: 12 años, 9 meses
Puntos: 1
Carrito de compras en PHP

El carrito de compras tiene 3 paginas diferentes.

agregar.php //Es donde se escoge el producto, costo y cantidad
consultar.php //Muestra los productos escogidos
vaciar.php //Vacia el carrito de compras

Este script no necesita de Mysql.

Muestra el resultado como una factura teniendo en cuenta la cantidad, valor unitario y nombre de cada producto. Tambien muestra el total y la cantidad total de todos los productos

agregar.php
Código:
<?php
//iniciar las cookies con un registro
session_start();

//toma los datos del formulario
$item=$_POST['item']; 
$cantidad=$_POST['cantidad'];
$costo=$_POST['costo']; 

//inicia la sesion itemsEnCesta
$itemsEnCesta=$_SESSION['itemsEnCesta']; 
$itemsEnCestaCosto=$_SESSION['itemsEnCestaCosto']; 


if ($item){ //comprueba si se a agregado un producto
   if (!isset($itemsEnCesta)){ //comprueba si se ha iniciado sesion
      $itemsEnCesta[$item]=$cantidad; //guarda la cantidad en el array ejemplo: $itemsEnCesta[bolso blanco]=20
	  $itemsEnCestaCosto[$item]=$costo;
   }
   else{ 
      foreach($itemsEnCesta as $k => $v){ 
         if ($item==$k){ 
         	$itemsEnCesta[$k]+=$cantidad;
		 	$itemsEnCestaCosto[$k]+=$costo; 
         	$encontrado=1; 
         } 
      } 
    if (!$encontrado) $itemsEnCesta[$item]=$cantidad; $itemsEnCestaCosto[$item]=$costo; 
   } 
} 

//actualiza la sesion con los datos agregados
$_SESSION['itemsEnCesta']=$itemsEnCesta; 
$_SESSION['itemsEnCestaCosto']=$itemsEnCestaCosto; 
?> 
<html> 
<body> 
<tt> 
<form action="<?php 

//Esto borra la direccion en el navegador luego de coger las variables.
$PHP_SELF."?".$SID

?>" method="post">
Dime el producto <input type="text" name="item" size="20"><br> 
Cuantas unidades <input type="text" name="cantidad" size="20"><br>
Costo <input type="text" name="costo" size="20"><br> 
<input type="submit" value="Añadir a la cesta"><br> 
</form> 
</tt><br>
<br>
</body> 
</html>
consultar.php
Código:
<?php 
session_start();

$itemsEnCesta=$_SESSION['itemsEnCesta']; 
$itemsEnCestaCosto=$_SESSION['itemsEnCestaCosto']; 

?>
<table width="36%" border="0">
  <tr bgcolor="#CCCCCC">
    <td width="13%"><div align="center">Cantidad</div></td>
    <td width="42%"><div align="center">Producto</div></td>
    <td width="25%"><div align="center">Vr Unitario </div></td>
    <td width="20%"><div align="center">Vr Total </div></td>
  </tr>
  <?php 
  if (isset($itemsEnCesta)){ 
   echo'El contenido de la cesta de la compra es:<br><br>'; 
   foreach($itemsEnCesta as $k => $v){ 
   	  $valor = $v * $itemsEnCestaCosto[$k];
      //echo 'Artículo: '.$k.' cantidad: '.$v.' Costo unitario: '.$itemsEnCestaCosto[$k].' Valor: '.$valor.' <br>';
	  print '<tr><td>'.$v.'</td><td>'.$k.'</td><td>'.$itemsEnCestaCosto[$k].'</td><td>'.$valor.'</td></tr>';
	  $totalArt += $v;
	  $total += $valor;
   } 
} 
  ?>
</table> 
<?php print '<br>Articulos totales: '.$totalArt.'<br>Costo total: '.$total.''; ?>
vaciar.php
Código PHP:
<?php 
session_start
();
session_destroy();
?>
  #2 (permalink)  
Antiguo 07/04/2010, 09:24
 
Fecha de Ingreso: septiembre-2004
Mensajes: 324
Antigüedad: 18 años, 4 meses
Puntos: 13
Respuesta: Carrito de compras en PHP

Es una aportacion, o es un problema que tienes?

Etiquetas: carrito, compras
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:04.