Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/08/2015, 11:32
srwik
 
Fecha de Ingreso: enero-2010
Mensajes: 99
Antigüedad: 14 años, 3 meses
Puntos: 2
Averiguar si un campo no existe

Muy buenas,

Llevo todo el día dándole vueltas al asunto y no encuentro la manera.

Resulta que estoy sacando un listado de una tabla con 3 datos (tipo directorios) y estos van con una imagen como avatar que está en otra tabla.

Si el código lo ejecuto así funciona perfectamente:

Código PHP:
   $peticion "SELECT * FROM zapaterias";
  
$resultado mysqli_query($conexion$peticion);
    while(
$filamysqli_fetch_array($resultado)){
        echo 
"<article>";
        echo 
"<a href='listado.php?id=".$fila['idzapateria']."'><h3>".$fila['nombre']."</h3>";
        echo 
"<p>".$fila['ubicacion']."</p>";
        echo 
"</article>";
    
$peticion2 "SELECT * FROM zapateriasimg WHERE idzapateria= ".$fila['idzapateria'];
    
$resultado2 mysqli_query($conexion$peticion2);
    while(
$fila2mysqli_fetch_array($resultado2)){
        
         echo 
"<img src='img/".$fila2['url']."'>";
}
 }
    

        echo 
"</article>";
    } 
Con esto me saca el listado con los datos de la tabla y la imagen de la otra table pero UNICAMENTE si existe. Mi propósito es, que si no hay una imagen creada y ligada a otra fila del campo zapaterias, salga una imagen "default".

He probado con esto:

Código PHP:
  $peticion "SELECT * FROM zapaterias";
  
$resultado mysqli_query($conexion$peticion);
    while(
$filamysqli_fetch_array($resultado)){
        echo 
"<article>";
        echo 
"<a href='tienda.php?id=".$fila['idzapateria']."'><h3>".$fila['nombre']."</h3>";
        echo 
"<p>".$fila['ubicacion']."</p>";
        echo 
"</article>";
    
$peticion2 "SELECT * FROM zapateriasimg WHERE idzapateria= ".$fila['idzapateria'];
    
$resultado2 mysqli_query($conexion$peticion2);
    while(
$fila2mysqli_fetch_array($resultado2)){
        
if (
$fila2['url'] == NULL){
    
     echo 
"<img src='img/nophoto.jpg'>";
}   else {
         echo 
"<img src='img/".$fila2['url']."'>";
}
 }
    

        echo 
"</article>";
    }
  
mysqli_close($conexion);
  
  
?> 
Algo avanza, ya sale algo si el campo de la fila no existe, pero aún así requiere la existencia de una fila (con su id).

Estoy muy verde con php, seguro que es una chorrada pero no llego a dar con la tecla. Buscando en el foro di con mysql_num_rows pero al parecer ya no funciona con las nuevas versiones de php.

Googleando di con COUNT() pero creo que es otra historia diferente.

¿Saben en que puedo estar fallando o que se me escapa? Seguiré exprimiendo la mente

Gracias de antemano