Foros del Web » Programando para Internet » PHP »

Control de Stock

Estas en el tema de Control de Stock en el foro de PHP en Foros del Web. Hola amigos. Tengo una consulta que no se como resolverla. Resulta que estoy haciendo una web para un cliente, entre otras cosas con un carrito ...
  #1 (permalink)  
Antiguo 29/10/2006, 14:17
 
Fecha de Ingreso: mayo-2005
Ubicación: Muy lejos de aquí
Mensajes: 367
Antigüedad: 18 años, 11 meses
Puntos: 0
Control de Stock

Hola amigos.

Tengo una consulta que no se como resolverla. Resulta que estoy haciendo una web para un cliente, entre otras cosas con un carrito de la compra.

El tema está que cuando se añade algo al carrito, en la cantidad comprada de un articulo, he puesto un signo + y otro - para añadir o quitar cantidad de un mismo producto.

Pero lo que el cliente no quiere es que si por ejemplo, del articulo A tiene un stock de 5, que alguien pueda poner en el carrito 6 o 7 articulos de el articulo A, ¿me explico?

La solucion que he puesto ahora es, crear otro campo de stock temporal, y a medida que se pone un articulo, sumar + 1 en ese campo y si alcanza la cantidad tope del stock, pues no deja comprar más. Eso funciona bien... pero... y si el cliente no compra al final lo que ha puesto en el carrito?

A alguien se le ocurre una fomar eficaz?

Gracias de antemano
__________________
Saludos!
  #2 (permalink)  
Antiguo 29/10/2006, 16:37
 
Fecha de Ingreso: mayo-2005
Ubicación: Muy lejos de aquí
Mensajes: 367
Antigüedad: 18 años, 11 meses
Puntos: 0
¿Ninguna idea?
__________________
Saludos!
  #3 (permalink)  
Antiguo 29/10/2006, 20:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Hablas de "carrito" .. pero no indicas "técnicamente" que es lo nos interesa como gestionas la información en ese "carrito".

Lo normal es asociar "carrito" al uso de sesiones .. Pero como dices que "y si el cliente no compra al final lo que ha puesto en el carrito?" ahí ya entra la duda si realmente usas como médio temporal para mantener tu "stock virtual" una sesión (www.php.net/session) o bien gestionas una base de datos (tabla) o algo similar.

Si usas sesiones, por su naturaleza ..todos sus datos se gestionan en forma temporal .. sólo al finalizar tu proceso sería cuando traspases los datos que finalmente te quedaron en ese "carrito" (mejor dicho: variable de sesión) a tu modelo de datos: BBDD, o como gestiones los datos en el resto del proceso.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 30/10/2006, 03:13
 
Fecha de Ingreso: mayo-2005
Ubicación: Muy lejos de aquí
Mensajes: 367
Antigüedad: 18 años, 11 meses
Puntos: 0
Efectivamente, el carrito va a través de sesiones.

Lo que quiero, es que si tengo un stock de 5 unidades del articulo A, que no pueda agregar 6 unidades al carrito de ese producto.

Hasta ahora habia pensado en hacer... a medida que añado un articulo al carrito le resto -1 al stock, pero el problema viene en el supuesto caso de que la compra que está haciendo ese cliente al final no termina de hacerla y llena el carrito y sale de la web.

Espero haberme explicado algo mejor.

Un saludo
__________________
Saludos!
  #5 (permalink)  
Antiguo 30/10/2006, 05:33
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Hasta ahora habia pensado en hacer... a medida que añado un articulo al carrito le resto -1 al stock, pero el problema viene en el supuesto caso de que la compra que está haciendo ese cliente al final no termina de hacerla y llena el carrito y sale de la web.

Pues en ese caso no pasa nada .. tu sesión "muere" al salir tu usuario de tu aplicación ... Es de "suponer" que tu sólo -al finalizar la compra- traspasas los datos de tu sesión a tus BBDD . .es decir, haces el descuento -real- en el stock y pasas los datos a la tabla/BBDD que controle el pedido/facturación .. o lo que corresponda.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 07:58.