Foros del Web » Programando para Internet » PHP »

Si no existe nombre de la imagen mostrar una imagen X

Estas en el tema de Si no existe nombre de la imagen mostrar una imagen X en el foro de PHP en Foros del Web. Hola a todos tengo el siguiente codigo Código PHP: $query_alumnos  =  "SELECT * FROM alumnos " ;  Después en un Form tengo esto este mi form Código PHP: <?php  ...
  #1 (permalink)  
Antiguo 17/10/2011, 17:27
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Si no existe nombre de la imagen mostrar una imagen X

Hola a todos tengo el siguiente codigo
Código PHP:
$query_alumnos "SELECT * FROM alumnos "
Después en un Form tengo esto

este mi form

Código PHP:
<?php do { ?>  

<td><div align="left"><?php echo $row_alumnos['Nombre']; ?></div></td>  
.  
.  
.  

 <td><?php $r=$row_alumnos['ruta']; echo "<center><img src='$r' > </center>";?>  
<?php } while ($row_alumnosmysql_fetch_assoc($alumnos)); ?>
lo que quiero hacer es lo siguiente: las fotos las desgloso bien ... pero si mi ruta es = ../fotos/ aqui sin nombre de imagen ....es decir no hay una imagen a diferencia de ../fotos/alumno.png....

me muestra la tipica imagen del cuadrito con una X ... q puedo hacer para q en lugar de esa imagen muestre por ejemplo si mi ruta es =../fotos/ me muestre usuariox.png


este es el codigo con el q subo la imagen...
Código PHP:
$destino="../fotos";
move_uploaded_file ($_FILES['nomArchi'] ['tmp_name'], $destino '/' $_FILES ['nomArchi'] ['name']);
$ruta="../fotos/".$_FILES['nomArchi'] ['name'];
$r=$ruta

y lo inserto en la base asi INSERT INTO alumnos (rfcalumno, Nombre, ApellidoPaterno, ApellidoMaterno,ruta,----) VALUES (%s,%s,%s, %s, '$r',
  #2 (permalink)  
Antiguo 17/10/2011, 23:11
Avatar de Miztli  
Fecha de Ingreso: abril-2007
Mensajes: 39
Antigüedad: 17 años, 7 meses
Puntos: 1
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

Solo usa un if para validar:

<?php
$r=$row_alumnos['ruta'];
if($r!=''){
echo "<center><img src='$r' > </center>";
}
else{
echo "<center><img src='usuariox.png' > </center>";
}
?>

Saludos!
  #3 (permalink)  
Antiguo 17/10/2011, 23:15
Avatar de mko
mko
 
Fecha de Ingreso: agosto-2010
Ubicación: la vida es un riesgo
Mensajes: 101
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

usa esta funcion

file_exists

con esto verificas la existencia de un fichero o directorio

http://mx.php.net/manual/es/function.file-exists.php

aqui encontraras mas informacion sobre esta funcion

con tu consulta crea una variable
Código PHP:

//ejemplo
$comprobacion='imagenes/$tu_imagen';


if (
file_exists($comprobacion)) {
  
echo
"mostramos la imagen si esiste
<img src='imagenes/$tu_imagen'>

"
;

} else {
    echo 
"<img src='ruta-de-la-imegen-sinoexitieralaqbiscamos'>";

__________________
cuando no esperas nada y obtienes todo eso es destino
  #4 (permalink)  
Antiguo 18/10/2011, 15:35
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

Gracias a los dos por responder probe el primer codigo pero nada...
mmm más bien creo que tiene que ver con que si existe el archivo o no... gracias x horientarme ahora leí lo q me indicas pero mi ruta no siempre es la misma es decir las imagenes tienen distintos nombres aqui tengo la duda
como este ejemplo el archivo q se busca es foo.txt en mi caso son varias imagenes
no se como aplicar este codigo :s
Código PHP:
<Php
nombre_fichero  =  '/ ruta / a / foo.txt' ; if ( 

file_exists ( $ nombre_fichero )) { 
    echo  
"El Fichero  $ nombre_fichero  existe " 
} else { 
    echo  
"El Fichero  $ nombre_fichero  no existe " 

? > 
  #5 (permalink)  
Antiguo 18/10/2011, 16:07
 
Fecha de Ingreso: julio-2011
Mensajes: 220
Antigüedad: 13 años, 3 meses
Puntos: 72
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

Cita:
probe el primer codigo pero nada...
Tal vez se deba al que el campo donde se guarda la ruta de la imagen acepta el valor NULL prueba con este pequeño cambio el código de miztli

Código PHP:
Ver original
  1. <?php
  2. $r=$row_alumnos['ruta'];
  3. if($r!=null){
  4. echo "<center><img src='$r' > </center>";
  5. }
  6. else{
  7. echo "<center><img src='usuariox.png' > </center>";
  8. }
  9. ?>
  #6 (permalink)  
Antiguo 19/10/2011, 01:50
Avatar de mko
mko
 
Fecha de Ingreso: agosto-2010
Ubicación: la vida es un riesgo
Mensajes: 101
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

de esta menera si funciona para un solo archivo
el archivo .txt contine nombres de las imgenes de tus alumnos
acaso no las guardas en la base de datos

Código PHP:

$comprobacion
='imagenes/1.png';


if (
file_exists($comprobacion)) {
  
echo
"mostramos la imagen si esiste
<img src='$comprobacion'>

"
;

} else {

echo
"otra imagen x quee no esta la otra
<img src='imagenes/.computer.png'>

"
;

adaptandolo a tu consulta de el inicio del tema
Código PHP:

 <td><?php 
$r
=$row_alumnos['ruta']; 


if (
file_exists($r)) {
  
echo
"mostramos la imagen si esiste
<img src='$r'>

"
;

} else {

echo
"otra imagen x quee no esta la otra esta ruta cambila x la de tu imagen que decees mostra
<img src='../fotos/computer.png'>

"
;
}  
?>
__________________
cuando no esperas nada y obtienes todo eso es destino

Última edición por mko; 19/10/2011 a las 02:00
  #7 (permalink)  
Antiguo 19/10/2011, 09:49
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Si no existe nombre de la imagen mostrar una imagen X

Gracias a los dos por responder probe ambos códigos pero nada ya q la ruta como les decía no es vacía sino cuando no se sube nada se insertaba este valor ../fotos/
Cambie el codigo que tan amablemente me compartieron e hice esto

<td>
Código PHP:
<?php 
$r
=$row_alumnos['ruta']; 
if(
$r!='../fotos/'){
echo 
"<center><img src='$r' > </center>";
}
else{
echo 
"<center><img src='../fotos/usuarioX.png' > </center>";
}
?>
</td>

Funciona perfecto GRACIAS OTRA VEZ!!!!

Etiquetas: mysql, nombre, usuarios
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 13:24.