PHP - Campo en base de datos vacio Imagen rota que no quiero mostrar Php Mysql sale rota

 
Vista:

Campo en base de datos vacio Imagen rota que no quiero mostrar Php Mysql sale rota

Publicado por Agustin (2 intervenciones) el 16/12/2015 10:11:29
Tengo un problema con un codigo quiero mostrar solo unas noticias que tienen foto pero en la base de datos tengo noticias que no precisan foto. Pero a la hora de hacer la consulta en el while me muestra todas las noticias con sus imagenes y claro ahi alguna sin foto y la muestra rota y necesito que las noticias que no llevan imagenes no muestren nada. que puedo hacer incluir algun if o no se como compruebo ese campo que no este vacio y no muestre nada de el si es asi.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function listNoticias($min,$max)
{
	$sql= " select * from tbl_noticias where activa='S' AND web='S' order by fecha desc limit " . $min . "," . $max . ";";
		$res = $this->conexion->query($sql);
		if(!$res){ echo "<meta http-equiv='refresh' content='0; url=mensaje.php?mensaje=4'>" ;}
			while($fila = $res->fetch_array())
			{
?>
                    <div class="noticia">
                    	 <a href="noticia.php?noticia=<?php echo $fila['id_noticia'] ?>"><img src="images/articulos/

                            <?php
					/*campo donde tengo las imagenes  y quiero que si no hay imagen que no muestre                nada detro de este while $fila['logo'] es donde esta cargando las imagenes de mi base de datos */

                            echo $fila['logo']
	
						  ?>" width="241" height="152" /></a>
                    	<div class="infonews">
                        	<span class="fecha-news"><?php echo $fila['fecha'] ?></span>
                            <br>
                            <span class="tittle-news"><?php echo utf8_encode($fila['nombre']) ?></span>
                            <P><?php // echo substr($fila['texto'],0,100)."..." ?>
                            <br />
                            <br />
                             <a href="noticia/<?php echo $fila['id_noticia'] ?>/<?php echo $this->urls_amigables($fila['nombre']) ?>"><span class="vermas-news">[+]ver m&aacute;s</span></a>
                            </P>
                        <!-- end info news-->
                        </div>
                        <div style="clear:both;"></div>
					<img src="images/line_deg.png" style="margin-top:15px;" width="100%">
                    </div>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.634
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Campo en base de datos vacio Imagen rota que no quiero mostrar Php Mysql sale rota

Publicado por Alejandro (839 intervenciones) el 17/12/2015 01:38:14
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
seria con file_exists

1
2
3
4
5
6
if(file_exists("images/articulos/$fila[logo]")){
   echo "<img src='images/articulos/$fila[logo]' width='241' height='152' />";
}else{
   //Si no tiene imagen poner una imagen genérica
   echo "<img src='images/articulos/generica.jpg' width='241' height='152' />";
}

o con el operador ternario jejeje desde que lo supe para todo lo quiero usar :P

1
2
3
$src ="images/articulos/";
$src .= file_exists($src.$fila[logo])?$fila[logo]:"generica.jpg";
echo "<img src='$src' width='241' height='152' />";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alejandro
Val: 1.634
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Campo en base de datos vacio Imagen rota que no quiero mostrar Php Mysql sale rota

Publicado por Alejandro (839 intervenciones) el 17/12/2015 02:08:04
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
Se me pasaba, en el ejemplo anterior si $fila[logo] esta vacío y el directorio existe siempre va a dar la primer opción falta agregar el is_dir()
y es para comprobar que el archivo existe
1
2
$src= "images/articulos/$fila[logo]";
if(file_exists($src) and !is_dir($src)){...

para validar que el campo logo no este vacio seria
1
if($fila[logo]!="")

ya con eso puedes armarte tu código, validas el contenido del campo y luego la existencia del archivo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Campo en base de datos vacio Imagen rota que no quiero mostrar Php Mysql sale rota

Publicado por Agustin (2 intervenciones) el 17/12/2015 12:08:37
Oleeeee tio mil gracias, aunque ya lo resolvi con strlen recorriendo la cadena si es vacia o no que tampoco se me habia ocurrio, jejej muchisimas gracias esa perpectiva tambien es la bomba mil gracias!!!!!!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar