Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/08/2009, 06:35
Avatar de ale80262
ale80262
 
Fecha de Ingreso: junio-2008
Mensajes: 66
Antigüedad: 15 años, 10 meses
Puntos: 0
consulta select multiple

Hola he buscado y he encontrado varias respuestas pero no logro hacerlo correctamente

La aplicacion que estoy armando tiene una tabla de servicios una de usuarios otra de avatar de usuarios y otra de comentarios
tengo que relacionar 3 tablas la de usuarios, la de avatar la de usuarios y la de comentarios segun el servicio por el que consultan

Mi problema es el siguiente obtengo el id del servicio con ese id consulto la base de comentarios para que me devuelva los comentarios de ese servicio una vez que se que comentarios tiene nesecito relacionar segun el usuarios que dejo el comentario consultar la tabla de usuarios para obtener el nombre y la tabla de avatar para obtener el nombre del avatar.

codigo tengo que hacer estas tres consultas

Código PHP:
$sql "SELECT * from comentarios where id_servicio = $id_servicio order by id_comentario desc limit 0,6";
$sql_1 "SELECT * from avatar where id_usuario = $id_usuario ";
$sql_2 "SELECT * from usuarios where id_usuario = $id_usuario "
el mi problema esta en que el $id_usuario esta dado por el resultado de la primer consulta

codigo que funciona pero no creo que este bien hecho

Código PHP:
$sql "SELECT * from comentarios where id_servicio = $id_servicio order by id_comentario desc limit 0,6";
$res mysql_query($sql);


while (
$array mysql_fetch_array($res)){

$id_usuario $array["id_usuario"];

$db = new db(true);
$db->setTable('avatar');
$sql_u "SELECT * from avatar where id_usuario = $id_usuario ";
$res_u mysql_query($sql_u);
$tiene mysql_num_rows($res_u);

if (
$tiene == 0){
echo 
'<img src="admin/imagenes/phpthumb.php?src=../../usuario/no.jpg&w=50&h=50&zc=1"></td></tr>';
}else{

while (
$array mysql_fetch_array($res_u))
{

echo 
'<img src="admin/imagenes/phpthumb.php?src=../../usuario/avatar';
echo 
$array["id_usuario"]."/";
echo 
$array["nombre_i"];
echo 
'&w=50&h=50&zc=1"></td></tr>';
}
}

$db = new db(true);
$db->setTable('usuarios');
$sql_u "SELECT * from usuarios where id_usuario = $id_usuario ";
$res_u mysql_query($sql_u);
while (
$array mysql_fetch_array($res_u)){


echo 
$array["usuario"];

}

}




$sql "SELECT * from comentarios where id_servicio = $id_servicio order by id_comentario desc limit 0,6";
$res mysql_query($sql);



while (
$array mysql_fetch_array($res)){


echo 
$array["titulo_comentario"];
echo 
"<br>";
echo 
$array["comentario"];


echo 
$array["fecha"];



Como siempre agradezco qeuin pueda hecharme una mano y saludos a todos