Ver Mensaje Individual
  #5 (permalink)  
Antiguo 12/02/2009, 06:05
mariano_donati
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Respuesta: añadir nuevo producto al carro

Fijate en lo que te comentó Okram. Solo te tenés que preocupar de si el usuario está logueado en el momento en que quiere comprar. Por un lado tenés que guardar en una sesión si el usuario está logueado o no. Entonces, solo en el momento de comprar es cuestión de verificar el estado de está sesión. Si $_SESSION['logueado'] == true, entonces le permitís realizar la compra. Pero si no, entonces lo redirigis hacia la página de login para que inicie sesión (una buena opción para agregar sería que cuando el usuario inició sesión lo redirijas nuevamente hacia la página del carro de compras para que ahora sí pueda concretar su compra).
Eso por un lado. Por otro lado, tenés que guardar en una variable de sesión los productos que el usuario fue agregando. Solo el Id de cada uno de ellos (toda la otra información la sacás de la base de datos). Para agregar un producto nuevo al carro, tu código sería algo así:

Código php:
Ver original
  1. // Obtenés el array de productos
  2. $array_productos = $_SESSION['productos'];
  3. // Agregás un nuevo elemento
  4. $array_productos[count($array_productos)] = $ID; // ID del producto que querés agregar
  5. // Guardas el array con el nuevo producto agregado nuevamente en la sesion
  6. $_SESSION['productos'] = $array_productos;

Para eliminar un producto se complica un poco nomás, ya que vas a tener que recorrer cada elemento del array para saber si es el producto que tenés que eliminar. Algo así:

Código php:
Ver original
  1. for ( $i=0 ; $i<count($array_productos) ; $i++ )
  2. {
  3.       // Comprobar si el i-esimo producto es el que hay que eliminar
  4.       if($array_productos[$i] == $ID)  // ID del producto que querés eliminar
  5.       {
  6.                // ELIMINAR PRODUCTO ACÁ
  7.                return true;
  8.       }
  9. }
  10. return false;

De todas formas, ¿consideraste la posibilidad de implementar el carro de compras con base de datos?.
Saludos.
__________________
Add, never Remove