Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/12/2008, 15:57
Avatar de nemixor
nemixor
 
Fecha de Ingreso: diciembre-2008
Mensajes: 4
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta insertar multiples ingredientes a un plato

el problema que tengo es el siguiente:

tengo una tabla platos y una tabla ingredientes, la tabla platos tiene que poblarse con los ingredientes de la tabla ingredientes ya que obviamente un plato esta formado por varios ingredientes, tenia pensado poner los id de los ingredientes dentro de un longtext en la base de datos y realice el siguiente codigo que no logro hacer funcionar

Código PHP:
<FORM ACTION="procesar_poner_ingredientes.php">
<TABLE align="center">
<TR>
  <TD><span class="Estilo1">Cod Plato</span></TD>
  <TD>
<?php
   
include("../conexion.php");
   
$link=Conectarse();
   
$result=mysql_query("select id_platos from platos",$link);
   
?>
<?php
   
echo '<select name="id_platos">';
   echo 
"<option>-Elegir codigo de plato-</option>";
   while (
$row=mysql_fetch_array($result))
   {
    echo 
"<option value='".$row['id_platos']."'>".$row['id_platos']."</option>"
    
   } 
   echo 
"</select>";
  
mysql_free_result($result);
?></TD>
</TR>
<TR>
  <TD><span class="Estilo1">Ingredientes</span></TD>
  <TD>
<?php
   $result
=mysql_query("select id_ingredientes from ingredientes",$link);
?>
    <?php
   
echo '<select name="id_ingredientes">';
   echo 
"<option>-Elegir ingrediente-</option>";
   while (
$row=mysql_fetch_array($result))
   {
    echo 
"<option value='".$row['id_ingredientes']."'>".$row['id_ingredientes']."</option>"
   } 
   echo 
"</select>";
  
mysql_free_result($result);
?></TD>
</TR>
</TABLE>
<div align="center">
  <INPUT TYPE="submit" NAME="action" VALUE="Agregar">
</div>
</FORM>
<hr>
<?php
   $result
=mysql_query("select * from platos order by id_platos",$link);
?>
   <TABLE BORDER=1 align="center" CELLPADDING=1 CELLSPACING=1>
      <TR><TD><span class="Estilo2">&nbsp;<B>Cod. Platos</B></span></TD> 
      <TD><span class="Estilo2">&nbsp;<B>Nombre Platos</B>&nbsp;</span></TD> 
      <TD><span class="Estilo2">&nbsp;<B>ingredientes (id)</B></span></TD>
      </TR>
<?php
   
while($row mysql_fetch_array($result)) {
      
printf("<tr><td>&nbsp;%s</td> <td>&nbsp;%s&nbsp;</td> <td>&nbsp;%s</td></tr>"$row["id_platos"],$row["nom_platos"],$row["id_ingredientes"]);
   }
   
mysql_free_result($result);
   
mysql_close($link);
?>
</table>
   
</body>
</html>


<frameset rows="100%,*" border="0"> 
<noframes><iframe><noscript><xmp><pre>

luego hice un archivo que procese la consulta

Código PHP:
<?php
   
include("../conexion.php");
   
$link=Conectarse();
   
$id_platos=$_GET['id_platos'];
   
$id_ingredientes=$_GET['id_ingredientes'];
   
$ingredientes=mysql_query("select id_ingredientes from platos where id_platos= '$id_platos'",$link);
   
$ingrjuntos=$id_ingredientes.' '.$ingredientes;
   
mysql_query("update platos set id_ingredientes='$ingrjuntos' where id_platos= '$id_platos'",$link);
   
header("location: poner_ingredientes.php");
?>

<frameset rows="100%,*" border="0"> 
<noframes><iframe><noscript><xmp><pre>
el problema es que cuando guardo en la base de datos me sale "Resource id #4"

creo que el problema es esa linea

$ingredientes=mysql_query("select id_ingredientes from platos where id_platos= '$id_platos'",$link);
$ingrjuntos=$id_ingredientes.' '.$ingredientes;

, la sintaxis debe estar mal o algo pero no pillo ningun ejemplo que haga esto asi que no se

alguien podria ayudarme porfavor o pasarme algun ejemplo parecido a lo que quiero