Foros del Web » Programando para Internet » PHP »

Cómo almacenar en una variable una consulta de varias tablas?

Estas en el tema de Cómo almacenar en una variable una consulta de varias tablas? en el foro de PHP en Foros del Web. Hola a todos. Disculpen mi ignorancia, pero después de buscar la forma y no encontarla he acudido a ustedes para que me ayuden a encontrar ...
  #1 (permalink)  
Antiguo 20/05/2008, 08:14
 
Fecha de Ingreso: agosto-2005
Mensajes: 152
Antigüedad: 18 años, 8 meses
Puntos: 0
Cómo almacenar en una variable una consulta de varias tablas?

Hola a todos. Disculpen mi ignorancia, pero después de buscar la forma y no encontarla he acudido a ustedes para que me ayuden a encontrar una solución.
Mi problema es el siguiente:
Tengo una consulta de varias tablas de una bese de datos. La misma es la que muestro a continuación:
[sql]
SELECT grupos.IDGRUPO, grupos.NOMBRE, trabajadores.IDWORKERS, trabajadores.NOMBRE, servicio.NOMBRE, tabla_union.PLAN, tabla_union.PROD, monthname( FechaProduccion ) AS Mes
FROM (
grupos
INNER JOIN trabajadores ON grupos.IDGRUPO = trabajadores.IDGRUPO
)
INNER JOIN (
servicio
INNER JOIN tabla_union ON servicio.IDSERVICIO = tabla_union.IDSERVICIO
) ON trabajadores.IDWORKERS = tabla_union.IDWORKERS
LIMIT 0 , 30;
[/sql]
Esta consulta deseo almacenarla en un avariable para luego mostrar los resultados de la misma en una tabla.
Cuando se trata de una sola tabla la cosa resulta sencilla, pero como en este caso hay involucradas varias tablas, además de la clausula INNER JOIN, realmente no se cual sería el código a emplear para esto.
Espero hayan entendido mi duda. Muchas gracias por su atención.
  #2 (permalink)  
Antiguo 20/05/2008, 08:18
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años
Puntos: 6
Respuesta: Cómo almacenar en una variable una consulta de varias tablas?

Hola efelix,

Puedes guaradarla en un arreglo e ir llenendo la tabla para mostrar los resultados dentro de un while.

Estas usando MySQL como base de datos?

saludos
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 20/05/2008, 09:28
 
Fecha de Ingreso: agosto-2005
Mensajes: 152
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Cómo almacenar en una variable una consulta de varias tablas?

Gracias por tu respuesta. Si, estoy usando mysql. No se si me has entendido. Necesito almecaenar esta consulta en una variable. Por ejemplo en $query. Mi duda es cual sería la sintáxis. Soy algo nuevo en el desarrollo con php.
  #4 (permalink)  
Antiguo 20/05/2008, 10:13
 
Fecha de Ingreso: agosto-2005
Mensajes: 152
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Cómo almacenar en una variable una consulta de varias tablas?

Mira exactamente a esto es a lo que me refiero:
<?php
$bd = @ mysql_connect ("localhost", "efelix", "mychildren");
$error = "Error: No se puede conectar con la base de datso en estos momentos.
Por favor inténtelo más tarde.";
if (!$bd)
{
echo nl2br($error);
exit();
}
$sel = @ mysql_select_db ("plan_si");
if (!$sel)
{
echo "Error: No se pouede acceder a la consulta en estos momentos.
Por favor inténtelo más tarde";
exit();
}

$busqueda = @ mysql_query("SELECT grupos.IDGRUPO, grupos.NOMBRE, trabajadores.IDWORKERS, trabajadores.NOMBRE, servicio.NOMBRE, tabla_union.PLAN, tabla_union.PROD, monthname( FechaProduccion ) AS Mes
FROM (
grupos
INNER JOIN trabajadores ON grupos.IDGRUPO = trabajadores.IDGRUPO
)
INNER JOIN (
servicio
INNER JOIN tabla_union ON servicio.IDSERVICIO = tabla_union.IDSERVICIO
) ON trabajadores.IDWORKERS = tabla_union.IDWORKERS
);

if (!$busqueda)
{
echo "Error al seleccionar los elementos de la base de datos.
Por favor inténtelo más tarde";
exit();
}
echo "<table border=\"1\">\n";
while ($row = mysql_fetch_assoc($busqueda)) {
echo "<tr>\n";
foreach($row as $value) {
echo "<td bgcolor=\"yellow\">\n";
echo $value;
echo "</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";
?>

Esto no me funciona, no me da ningún error cuando llamo la página, pero no me sale ningún resultado en el navegador. Trabajo con el dreamweaver como editor. El dreamweaver suele diferenciar con colores diferentes los bloques de codigo. En el caso de los if el los pone de color verde. Pero en este caso el if que después de la asignación de la consulta se queda de color rojo. No se a que se debe el problema.
  #5 (permalink)  
Antiguo 20/05/2008, 10:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cómo almacenar en una variable una consulta de varias tablas?

mira bien... pero te faltan las comillas de la consulta SQL, haces JOIN() pero nunca cierras con el..... "); que te falta del mysql_query() o no???
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 06:44.