Foros del Web » Programando para Internet » PHP »

Problema carrito de compras

Estas en el tema de Problema carrito de compras en el foro de PHP en Foros del Web. Hola compañer@s buen día! Con sulto otra vez estos foros ya que no consigo entender bien como "acumular "datos para un carrito de compras. He ...
  #1 (permalink)  
Antiguo 24/03/2012, 10:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 66
Antigüedad: 15 años, 7 meses
Puntos: 2
Problema carrito de compras

Hola compañer@s buen día!

Con sulto otra vez estos foros ya que no consigo entender bien como "acumular "datos para un carrito de compras. He visto ejemplos pero no les entiendo y ya me canse de intentar, intentar y que no me salga, así que pido ayuda a ustedes.

Entiendo que primero muestro al usuario los productos, luego recogo sus "pedidos" y las paso a otra página que vaya "acumulando " sus datos en un arreglo, pero en esto es donde no entiendo como meterlos al arreglo.

En la página catálogo.php muestro los productos y los paso por GET a agregarcarrito.php?. ¿Pero como meto esos GET´s en variables de sesión y luego esas variables de sesión en un arreglo que contenga todos sus pedidos.?

No tengo códigos aún ya que solo me he dedicado a tratar de meter variables en arreglos. XD.

SI me pudieran ayudar por favor, se los agradecería infinitamente.
  #2 (permalink)  
Antiguo 25/03/2012, 05:07
Avatar de ShuyithoKruz  
Fecha de Ingreso: marzo-2012
Ubicación: Tijuana
Mensajes: 40
Antigüedad: 12 años
Puntos: 3
Respuesta: Problema carrito de compras

espero que esto te sirva

archivo1.php
Código PHP:
    <?php
    session_start
();
    
//codigos....
    //mas codigos....
    // FIN=$variable.
    
$_SESSION["variable"]=$variable;
    
?>
archivo2.php
Código PHP:
    <?php
    session_start
();
    echo 
$_SESSION["variable"];
    
?>
  #3 (permalink)  
Antiguo 25/03/2012, 09:18
 
Fecha de Ingreso: septiembre-2008
Mensajes: 66
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Problema carrito de compras

Hola pero cómo meto esa variable en un array y después otra meterle en el mismo array y así sucesivamente.
  #4 (permalink)  
Antiguo 25/03/2012, 09:34
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 6 meses
Puntos: 140
Respuesta: Problema carrito de compras

A lo mejor esto te sirve:

Código PHP:
Ver original
  1. if(isset($_SESSION['carro'])) {$carro=$_SESSION['carro'];}
  2. if ($carro["$referencia"]["cantidad"] != NULL and $carro["$referencia"]["cantidad"] > 0) { // si existe, añadimos 1
  3.     $carro["$referencia"]["cantidad"]++;
  4.     }
  5. else { // si no existe, creamos.
  6.     $carro["$referencia"]=array('etcetcetc')
  7.     }
  8. etcetcetc
  9. $_SESSION['carro']=$carro;
  #5 (permalink)  
Antiguo 25/03/2012, 10:10
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: Problema carrito de compras

Bueno voy a poner mi respuesta según lo que entendí que quieres.

En el archivo agregarcarrito.php recibes el GET y lo pasa como parametro a una funcion que cree llamada addItem


Código PHP:
addItem($_GET);
        
# La funcion addItem recoge la informacion y la agrega a la seccion. 
# Ojo : Esta funcion no esta 100% terminada , deberias de hacer una cuantas 
# verificaciones antes de agregar los Item a la seccion 
# como ej. verificar si el Item cumple algunas condiciones para ser almacenado

        
function addItem($_Items)
        {
            
# Fijate en esta parte cree una variable de array multiple
            
$_SESSION['Productos'][] = $_Items;
                
        } 
Una vez tengas esos datos en la variable de session lo podras consultar desde otro archivo de esta manera.


Código PHP:
Ver original
  1. for($i=0; $i < count( $_SESSION['Productos'] ); $i++ ){
  2.                
  3. echo $_SESSION['Productos'][$i]['Cantidad']." de ".$_SESSION['Productos'][$i]['Nombre']."<BR>";
  4.                
  5.         }
  6. /*
  7. Esto me deberia de imprimir
  8.  
  9. 23 de Producto_x
  10.  
  11. Esto es suponiendo que en catalogo tienes un campo llamado Nombre y otro llamado Cantidad.
  12.  
  13. */
  #6 (permalink)  
Antiguo 28/03/2012, 11:59
 
Fecha de Ingreso: septiembre-2008
Mensajes: 66
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Problema carrito de compras

Gracias por sus respuestas me han servido mucho, pero utilizándolas me ha surgido una duda en cuanto al array, pongo este código

carrito.php

Código PHP:
<?php
session_start
(); 
$clave $_GET['clave'];
$producto $_GET['producto'];
$cantidad $_GET['cantidad'];
addItem($clave$producto$cantidad); 


        function 
addItem($clave$producto$cantidad
        { 
# Fijate en esta parte cree una variable de array multiple 
            
$_SESSION['Productos'][][$clave][$proucto] = $cantidad
        
                 for(
$i=0$i count$_SESSION['Productos'] ); $i++ ){echo $_SESSION['Productos'][$i]."<BR>";}


                
        }  
        


?>
Lo que trato de hacer es mando desde la página agregarcarrito.php
Código HTML:
<a href="carrito.php?clave=ht_1210&proucto=condensador&cantidad=45">Agregar</<a> 
Con sus respuestas lo que traté de hacer es se recogen las variables y se crean en el "arreglo global" y luego se hace el ciclo for y se imprimen en pantalla lo que tiene el array, pero cuando hago esto me salta este mensaje siempre

"Notice: Undefined index: clave in /home/www/catalogo/agregarcarrito.php on line 3 Notice: Undefined variable: proucto in /home/www/catalogo/carrito.php on line 16.

Array"

Me pueden ayudar lo que quiero que salga es el proucto y la cantidad que seleccionó pero ya no se como.

Etiquetas: carrito, compras, variables, usuarios
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




La zona horaria es GMT -6. Ahora son las 10:45.