Foros del Web » Programando para Internet » PHP »

Fallo en Consulta :(

Estas en el tema de Fallo en Consulta :( en el foro de PHP en Foros del Web. Hola Amigos, llevo un rato dando vueltas a este trozo de código y no consigo hacer que si el campo referencia está vacio me ponga ...
  #1 (permalink)  
Antiguo 03/04/2008, 15:20
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Fallo en Consulta :(

Hola Amigos, llevo un rato dando vueltas a este trozo de código y no consigo hacer que si el campo referencia está vacio me ponga un mensaje en pantalla de que no hay registros.

Gracias de Antemano.


Código PHP:
//Realizamos la Consulta

$_pagi_sql="select * from pisos where tipo='$btipo' AND opcion='$bopcion' AND barrio='$bbarrio'";
    
    
//Comprobación 1
    
if ($bhabitaciones!="") {
        
$_pagi_sql.=" AND dormitorios='$bhabitaciones'";
    }
    
//Comprobación 2
    
if ($bdesde!="" OR $bhasta!="") {
        
$_pagi_sql.=" AND precio BETWEEN $bdesde AND $bhasta";
    }
    

//Número de Resultados
$_pagi_cuantos 10

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php"); 


while(
$fila=mysql_fetch_array($_pagi_result)){

//Incluimos la foto de Vacio
if ($fila['foto1']==""){
    
$fila['foto1']="vacio.jpg";
    }

//Creamos la Tabla
echo "<table align='center' width='640px' border='1' cellspacing='0' cellpadding='2' bordercolor='ffffff'>";

// ESTE TROZO ES EL QUE NO ME HACE BIEN
if ($fila['referencia']==""){
   echo 
"<tr><td colspan='4'>No hay Coincidencias</td></tr>";
   }
// FIN DE TROZO DE CODIGO QUE NO ME HACE O HAGO ALGO MAL :(

echo "<tr><td rowspan='4' align='center' width='21%' height='120px'><img src='$path".$fila['foto1']."' width='100px' height='100px' align='middle'></td><td colspan='3'>".$fila['barrio']."</td></tr>";
echo 
"<tr><td width='26%'> Tipo: ".$fila['tipo']."</td><td width='26%'> Dormitorios: ".$fila['dormitorios']."</td><td width='26%'> M2 : ".$fila['metros']."</td></tr>";
echo 
"<tr><td> Garaje: ".$fila['garaje']."</td><td> Trastero: ".$fila['trastero']."</td><td> Piscina: ".$fila['piscina']."</td></tr>";
echo 
"<tr><td colspan='2' rowspan='2'> Descripción: ".$fila['descripcion']."</td><td rowspan='2'> Precio: ".$fila['precio']."</td></tr><br>";

}

//Cerramos la Tabla
echo "</table><br>";

//Incluimos la barra de navegación
echo "<table align='center' width='640px' border='0'>";;
echo 
"<tr><td width='100%' align='center'>";
echo 
"<font color='black'>Pag. ".$_pagi_navegacion."</font>";
echo 
"</td></tr></table>";

//Cerramos la BD
mysql_close($con);


?> 
  #2 (permalink)  
Antiguo 03/04/2008, 15:28
Avatar de agressor  
Fecha de Ingreso: noviembre-2007
Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: Fallo en Consulta :(

if (is_empty($fila['referencia'])){
echo "<tr><td colspan='4'>No hay Coincidencias</td></tr>";
}

Salu2..!!
__________________
Somos lo que nosotros queremos ni mas ni menos..
No hay dia mas perdido que aquel en que no hemos reido..
La vida es tal y como debe ser...
Nadie vivira por ti...
  #3 (permalink)  
Antiguo 03/04/2008, 15:35
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: Fallo en Consulta :(

No funciona :(

Fatal error: Call to undefined function is_empty() in C:\Archivos de programa\....\listadok1.php on line 103

y si uso solo (empty... ) no me sale ningun texto al igual que me hacia con la condición if :(
  #4 (permalink)  
Antiguo 03/04/2008, 16:01
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: Fallo en Consulta :(

También he probado con:

Código PHP:
if (mysql_num_rows($_pagi_result)==0){
    echo 
"<tr><td>No hay coincidencias</td></tr>";
    } 
Y nada, sigue igual, si hay coincidencias las muestra sin problema, pero si no hay coincidencias no me imprime nada ne pantalla. :(
  #5 (permalink)  
Antiguo 03/04/2008, 16:10
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: Fallo en Consulta :(

Saqué la consulta fuera del While y ya funciona :)
  #6 (permalink)  
Antiguo 03/04/2008, 16:13
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 529
Antigüedad: 17 años, 4 meses
Puntos: 11
Re: Fallo en Consulta :(

La función is_empty esta mal amigo.
Por eso te da el error de que la función no fue definida.
La función correcta es empty().

Entonces el condicional sería

Código PHP:
if (empty($variable))
{
 
// Está vacía o vale cero
 

Saludos
  #7 (permalink)  
Antiguo 03/04/2008, 19:14
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Fallo en Consulta :(

Está bien el código que pusiste con mysql_num_rows(), sólo que debes colocarlo fuera del while(), porque si entró al bucle, es que sí hay resultados que mostrar no?

Código PHP:
if (mysql_num_rows($_pagi_result) < 1){ # Mejor que uses el comparador < y no el ==
    
echo "<tr><td>No hay coincidencias</td></tr>"
}  
while( 
//....... 
Un saludo,
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 05:07.