Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2014, 09:15
migsbaz
 
Fecha de Ingreso: agosto-2014
Ubicación: peru
Mensajes: 24
Antigüedad: 9 años, 9 meses
Puntos: 0
Pregunta consulta PHP - MYSQL -

buen día amigos, les cuento q estoy tratando de hacer un sistemas de pedidos para un restaurant ;ya que es un trabajo de la universidad ojala alguien pueda ayudarme.

tengo una tabla pedidos en donde guardo la información de los pedidos, tanbien tengo una tabla que se llama detalle pedidos la que me guarda los detalles de cada pedido de la tabla pedidos y una tabla carta donde almaceno la información de lo platos. tengo la necesidad de hacer 2 consultas :

1° la primera es para que el detalle_pedido guarde el id de la tabla pedidos; dicho id es pasado por el GET y de esta forma lograr que cada pedido tenga su propio detalle.

$codped = $_GET['id'];
$sql = "SELECT * FROM detalle_pedidos WHERE pedidos_id=$codped ORDER BY cant,comentario"
$res = mysql_query($sql)


2° la segunda es para jalar datos de otra tabla (carta) para esto utilizo el NNER JOIN .

$sql = "SELECT * FROM detalle_pedidos det
INNER JOIN carta ca
ON det.carta_id = ca.idcarta";
$res = mysql_query($sql);


Bueno si pongo las consultas una a la vez si se llegan a realizar ; es decir si me corre el código pero solo si las pongo por separado una a la vez, o bien una o bien la otra.

lo que quiero lograr y en lo que necesito ayuda es como hacer que estas dos consultas se unan en una sola fusionarlas o de lo contrario ejecutarlas las dos consultas para lograr imprimir en pantalla
los datos de la tabla carta y detalle_pedidos ligados a cada pedido de la tabla pedidos

esta es la parte en donde visualizo en pantalla los datos requeridos .

Como seria esta parte ?

<?php while ($fila = mysql_fetch_assoc($res)) : ?>

<tr>
<td><?php echo $fila['id'] ?></td>
<td><?php echo $fila['cant'] ?></td>
<td><?php echo utf8_encode($fila['descripcion'])?></td>
<td><?php echo utf8_encode($fila['comentario'])?></td>
<td><?php echo $fila['estado'] ?></td>
<td>&nbsp;</td>
</tr>
<?php endwhile?>

estuve probando y guarda todo bien en la tabla pero la variable descripción en detalle_pedidos se comparte para todos los pedidos y así no debe ser cada pedidos debe tener su propio detalle, es decir la variable descripción necesita del ($res1)para que se mantenga con el ID de pedidos y tanbien necesita el ($res2) para que busque en la otra tabla Carta don de se encuentran la descripción de los platos; de forma seria en este caso .
aquí esta el código completo:

<?php
$codped = $_GET['id'];

require("conexion.php");
$sql1 = "SELECT * FROM detalle_pedidos WHERE pedidos_id=$codped ORDER BY cant,comentario";
$sql2 = "SELECT * FROM detalle_pedidos det
INNER JOIN carta ca
ON det.carta_id = ca.idcarta";

$res1= mysql_query($sql1);
$res2 = mysql_query($sql2);
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8" />
<title>Detalle Pedidos</title>
</head>
<body>
<h2 align="center">Detalle Pedidos</h2>
<table width="800px" align="center" border="1">
<tr>
<th>Id</th>
<th>Cant.</th>
<th>Nombre de Plato</th>
<th>Comentario</th>
<th>Estado</th>
<th>Acción</th>
</tr>
<?php while ($fila = mysql_fetch_assoc($res)) : ?>

<tr>
<td><?php echo $fila['id'] ?></td>
<td><?php echo $fila['cant'] ?></td>
<td><?php echo utf8_encode($fila['descripcion'])?></td>
<td><?php echo utf8_encode($fila['comentario'])?></td>
<td><?php echo $fila['estado'] ?></td>
<td>&nbsp;</td>
</tr>
<?php endwhile?>

</table>
<a href="nuevodetallepedido.php?id=<?php echo $codped?>">Nuevo Detalle</a>
<?php
mysql_close();
?>
</body>
</html>


gracias de antemano.