Hola,
tengo un proyecto que es una especie de inmobiliaria, con dos tablas que serían inmueble, e img_inmo(que son las imagenes de la inmobiliaria).
Tabla inmueble:
-ref(clave primaria)
-nombre
-ciudad
-descripcion
-precio
-direccion
-tipo
-alquiler
-habitaciones
Img-inmo
-id(clave primaria)
-id_inmueble (clave foranea de la clave del inmueble, ref en la tabla inmueble)
-nombre (el nombre de la imagen ej: imagen.jpg)
Intento hacer una busqueda acanzadacon un formulario y 5 campos, de donde recibo. Al recibirlo, en la pagina donde trato la busqueda hago eso:
Código PHP:
Ver original<?php
include("conexion.php");
/*******************preparamos la consulta para concatenar**************************/
$select="select inmueble.nombre, inmueble.ciudad, inmueble.descripcion,inmueble.precio , inmueble.direccion, inmueble.tipo
,inmueble.alquiler, inmueble.habitaciones, img_inmo.id, img_inmo.id_inmueble
from inmueble, img_inmo";
if($categoria=='todas'){
$cat=" where inmueble.tipo like '%%' ";
}
else{
$cat=" where inmueble.tipo='$categoria' ";
}
if($operacion=='todas'){
$op=" and inmueble.alquiler like '%%' ";
}
else{
$op=" and inmueble.alquiler='$operacion' ";
}
if ($habitacion=="todas") {
$hab=" and inmueble.habitaciones like '%%' ";
}
else{
$hab=" and inmueble.habitaciones='$habitacion'";
}
if($ciudad=='todas'){
$ci=" and inmueble.ciudad like '%%' ";
}
else{
$ci= "and inmueble.ciudad='$ciudad' ";
}
if($precio=='todas'){
$pre= " and inmueble.precio like '%%' ";
}
else{
$pre =" and inmueble.precio ='$precio' ";
}
$final=" and img_inmo.id=(select img_inmo.id from img_inmo where img_inmo.id_inmueble=inmueble.ref limit 1)";
$consulta= $select . $cat . $op . $hab . $ci . $pre . $final;
selecciono todos los datos del inmueble y de img_inmo unidos por clave.
El problema está al mostrar los datos, en concreto la imagen ( campo nombre de inmo_img), que directamente no me recoege ese campo así lo hago:
Código PHP:
Ver originalwhile ($inmo=mysql_fetch_assoc($query)){
$rim=$inmo['ref'];
$im=mysql_query("select nombre from img_inmo where id_inmueble='$rim' limit 1", $conectado);
$img=mysql_fetch_assoc($im);
?>
<div class="row">
<section class="6u">
<div class="box post">
<a href="res.php?ref=<?php echo $inmo['ref'];?>" class="image left2"><img src="admin/pages/forms/images/<?php echo $img['nombre'];?>" alt="" /></a>
<div class="inner">
<h3><?php echo $inmo['nombre'];?></h3>
<?php
$size=220;
$str=$inmo['descripcion'];
$str .= "...";
?>
<p class="descripcion"><?php echo $str?></p>
</div>
<footer class="mas">
<a href="res.php?ref=<?php echo $inmo['ref'];?>" class="button">Más detalles</a>
</footer>
</div>
</section>
</div>
<hr>
<?php
}
Donde recogo la imagen $img['nombre'], debería sacarme el nombre de la imagen, imagen.jpg, pero está vacio y no se porque, debe haber alguna confusion en las consultas entre las dos tablas o algo pero no lo consigo,
gracias