Foros del Web » Programando para Internet » PHP »

consulta de 3 tablas mysql en php

Estas en el tema de consulta de 3 tablas mysql en php en el foro de PHP en Foros del Web. que tal, tengo la siguiente consulta mysql SELECT solicitud.num_solicitud, solicitud.nom_area, solicitud.cant_insumo, solicitud.ref_insumo, MAX( insumo.nota ) AS calificacion, proveedor.cod_proveedor FROM solicitud, insumo, proveedor WHERE solicitud.ref_insumo = ...
  #1 (permalink)  
Antiguo 01/09/2006, 18:49
 
Fecha de Ingreso: junio-2006
Mensajes: 41
Antigüedad: 11 años, 6 meses
Puntos: 0
consulta de 3 tablas mysql en php

que tal, tengo la siguiente consulta mysql

SELECT solicitud.num_solicitud, solicitud.nom_area, solicitud.cant_insumo, solicitud.ref_insumo, MAX( insumo.nota ) AS calificacion, proveedor.cod_proveedor
FROM solicitud, insumo, proveedor
WHERE solicitud.ref_insumo = insumo.ref_insumo AND insumo.cod_proveedor = proveedor.cod_proveedor
GROUP BY num_solicitud

ejecutandolo en consola mysql resulta

num solicitud
1
2
3

nom_area
area1
area2
area2

cant_insumo
2
4
1

calificacion
5
5
3

cod_proveedor
proveedor1
proveedor5
proveedor3

como podria adaptar esta consulta al siquiente codigo php:

<?php
$num_solicitud=$_POST['num_solicitud'];
$nom_area=$_POST['nom_area'];
$ref_insumo=$_POST['insumo.ref_insumo'];
$cant_insumo=$_POST['cant_insumo'];
$fecha_solicitud=$_POST['fecha_solicitud'];
$cod_proveedor=$_POST['proveedor.cod_proveedor'];
$nom_proveedor=$_POST['nom_proveedor'];
$tel_proveedor=$_POST['tel_proveedor'];
$cod_atencion=$_POST['cod_atencion'];
$db = mysql_connect("localhost","root","") or die("Hubo un error de inicializacion de la base de datos");
#Selección de la base de datos
mysql_selectdb("mape");
$sql = " 'SELECT num_solicitud, nom_area, nota, solicitud.ref_insumo, cant_insumo, MAX(nota) AS nota, proveedor.cod_proveedor, nom_proveedor, tel_proveedor'
'FROM solicitud, insumo, proveedor'";

$flag = 0;

if ($ref_insumo != "" || $cod_proveedor != "")
{
$sql .= " where (";

if ($ref_insumo != "")
{
$texto1 = "%";
$texto1 .= $ref_insumo;
$texto1 .= "%";
$sql .= " (solicitud.ref_insumo like '$texto1') ";
$flag = 1;
}

if ($cod_proveedor != "")
{
if ($flag == 1) { $sql .= " AND "; } else { $flag = 1; }
$sql .= " (insumo.cod_proveedor='$cod_proveedor') ";
}


$sql .= " ) ";
}

$sql .= " group by num_solicitud DESC";

$result=mysql_query($sql,$db);
$contador=0;
$dato=array();
while ($row=mysql_fetch_array($result))
{
echo '<tr><td class="Letra" align="center"><a href="detalle_d.php?num_solicitud='.$row["num_solicitud"].'">'.$row["num_solicitud"].'</a></td>';
echo '<td class="Letra" align="center">'.$row["nom_area"].'</a></td>';
echo '<td class="Letra" align="center">'.$row["ref_insumo"].'</a></td>';
echo '<td class="Letra" align="center">'.$row["cod_proveedor"].'</a></td>';
echo '<td class="Letra" align="center">'.$row["nota"].'</a></td>';
}
mysql_free_result($result)
?>

desde ya gracias por sus comentarios.

Última edición por gerriv; 02/09/2006 a las 10:39
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 20:50.