Foros del Web » Programando para Internet » PHP »

problema con php y mysql que no logro solucionar

Estas en el tema de problema con php y mysql que no logro solucionar en el foro de PHP en Foros del Web. tengo una tabla platos (id_plato,nom_plato,ids_ingredientes)relacionada con una tabla ingredientes(id_ingrediente,nom_ingrediente,cant_i ngrediente), a cada plato se le asigan los ingredientes necesarios para su creacion ej nombre:pizza ingredientes:tomate ...
  #1 (permalink)  
Antiguo 11/12/2008, 19:55
Avatar de nemixor  
Fecha de Ingreso: diciembre-2008
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Pregunta problema con php y mysql que no logro solucionar

tengo una tabla platos (id_plato,nom_plato,ids_ingredientes)relacionada con una tabla ingredientes(id_ingrediente,nom_ingrediente,cant_i ngrediente), a cada plato se le asigan los ingredientes necesarios para su creacion ej

nombre:pizza
ingredientes:tomate queso etc

la idea es que tengo que descontar en 1 cada ingrediente de la tabla ingredientes de acuerdo al string de id de ingredientes que estan en la tabla platos

ej:

el plato pizza tiene
id_ingredeintes:1 2 3 (separado por un espacio)

necesito hacer una consulta que tome la tabla ids_ingredientes de la tabla platos, separe cada ingrediente individualmente(para eso esta el espacio) y los descuente en 1 la cantidad de la tabla ingredientes


no se me ocurre como hacerlo para separar el string ni para hacer la consulta necesaria asi que solicto un poco de ayuda porfavor
  #2 (permalink)  
Antiguo 11/12/2008, 20:17
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Respuesta: problema con php y mysql que no logro solucionar

Hola nemixor,

Tu diseño esta incorrecto, debes de agregar una llave foranea a tu tabla ingredientes que lo relacionen con el id_plato. Asi puedes seleccionar y descontar.

Saludos.
  #3 (permalink)  
Antiguo 11/12/2008, 20:30
Avatar de nemixor  
Fecha de Ingreso: diciembre-2008
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Respuesta: problema con php y mysql que no logro solucionar

es que el problema es que el plato lleva varios ingredientes, po eso que tengo la ensalada con el diseño
  #4 (permalink)  
Antiguo 11/12/2008, 21:15
 
Fecha de Ingreso: noviembre-2008
Mensajes: 94
Antigüedad: 11 años
Puntos: 6
Respuesta: problema con php y mysql que no logro solucionar

Hmmm... los ids de los ingredientes de cada plato están en un sólo campo, me imagino que algo así: "2 4 7" ¿no?

Lo que se me ocurre es tomar ese campo, hacerle un explode con php y después con foreach recorrer el arreglo resultante y hacer un update por cada uno de los ingredientes encontrados. Más o menos así (suponiendo que ya leímos la tabla de platos y guardamos los ingredientes en $ids_ingredientes)

$ingredientes = explode(" ", $ids_ingredientes);
$consulta = "";
foreach($ingredientes as $key => $ingrediente) {
$consulta .= "UPDATE ingredientes SET cant_i = cant_i - 1 WHERE id_ingrediente = $ingrediente;";
}
mysql_query($consulta);
  #5 (permalink)  
Antiguo 11/12/2008, 21:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Respuesta: problema con php y mysql que no logro solucionar

Por eso aunque lleve varios ingredientes por eso la clave foranea en ingredientes para el plato, lee sobre relaciones 1:n.

Saludos.
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 02:25.