Foros del Web » Programando para Internet » PHP »

Poner imagen alternativa si la carpeta (/files) esté vacia

Estas en el tema de Poner imagen alternativa si la carpeta (/files) esté vacia en el foro de PHP en Foros del Web. Hola amigos tengo este trozo de código que muestra la imagen que contiene una carpeta o directorio, en este caso (/files). Lo que quiero es ...
  #1 (permalink)  
Antiguo 06/11/2011, 00:44
Avatar de AlexServ  
Fecha de Ingreso: diciembre-2008
Ubicación: La Paz Bolivia
Mensajes: 97
Antigüedad: 15 años, 3 meses
Puntos: 0
Poner imagen alternativa si la carpeta (/files) esté vacia

Hola amigos tengo este trozo de código que muestra la imagen que contiene una carpeta o directorio, en este caso (/files).

Lo que quiero es que en caso de que (/files) esté vació muestre una imagen alternativa que se encuentre en otra carpeta o directorio.

Código PHP:
<?php
    $directory
="files/";
    
$dirint dir($directory);
    while ((
$imagen $dirint->read()) !== false)
    {
        if (
eregi("gif"$imagen) || eregi("jpg"$imagen) || eregi("png"$imagen)) {
            echo 
'<img src="/'.$directory."".$imagen.'">'."\n"
        }
    }
    
$dirint->close();
?>
Gracias por ayudarme
__________________
Noticias Bolivianas - La música es maravillosa Mp3 Bolivia
  #2 (permalink)  
Antiguo 06/11/2011, 01:58
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 10 meses
Puntos: 322
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

Puedes usar la función scandir y contar los índices del array que devuelve: si son dos o menos, el directorio está vació.

¿Por qué dos o menos? Porque siempre el primer índice tendra . y el segundo tendrá ..
http://mx.php.net/manual/es/function.scandir.php

Saludos
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 06/11/2011, 04:31
Avatar de AlexServ  
Fecha de Ingreso: diciembre-2008
Ubicación: La Paz Bolivia
Mensajes: 97
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

Amigos ayudenme, llegue hasta aquí
Código PHP:
<?php
    $directory
="fotos/";
    
$dirint dir($directory);
    while ((
$imagen $dirint->read()) !== false)
     {
        if (
eregi("hola.jpg"$imagen))  {
            echo 
'<img src="/fotos/hola.jpg">'."\n"
        }
        else if (
eregi("vacio.jpg"$imagen)) {
            echo 
'<img src="/fotos/vacio.jpg">'."\n";
        }
    }
    
$dirint->close();
?>
Hasta acá. Cuando no está la hola.jpg se muestra vacio.jpg ; pero cuando ya esta hola.jpg también muestra vacio.jpg.

Lo que quiero es que ya no muestre vacio.jpg cuando ya esté hola.jpg en el directorio.

Espero puedan ayudarme
__________________
Noticias Bolivianas - La música es maravillosa Mp3 Bolivia
  #4 (permalink)  
Antiguo 06/11/2011, 04:32
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

Cita:
Iniciado por AlexServ Ver Mensaje
Amigos ayudenme, llegue hasta aquí
Código PHP:
<?php
    $directory
="fotos/";
    
$dirint dir($directory);
    while ((
$imagen $dirint->read()) !== false)
     {
        if (
eregi("hola.jpg"$imagen))  {
            echo 
'<img src="/fotos/hola.jpg">'."\n"
        }
        else if (
eregi("vacio.jpg"$imagen)) {
            echo 
'<img src="/fotos/vacio.jpg">'."\n";
        }
    }
    
$dirint->close();
?>
Hasta acá. Cuando no está la hola.jpg se muestra vacio.jpg ; pero cuando ya esta hola.jpg también muestra vacio.jpg.

Lo que quiero es que ya no muestre vacio.jpg cuando ya esté hola.jpg en el directorio.

Espero puedan ayudarme
¿Por qué no utilizas la solución que te han dado?
  #5 (permalink)  
Antiguo 06/11/2011, 04:35
Avatar de AlexServ  
Fecha de Ingreso: diciembre-2008
Ubicación: La Paz Bolivia
Mensajes: 97
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

No entiendo muy bien la explicación que me dan en la pagina de PHP aun no estoy familirizado con la función scandir
__________________
Noticias Bolivianas - La música es maravillosa Mp3 Bolivia
  #6 (permalink)  
Antiguo 06/11/2011, 04:36
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

Cita:
Iniciado por AlexServ Ver Mensaje
No entiendo muy bien la explicación que me dan en la pagina de PHP aun no estoy familirizado con la función scandir
Quizás no funcione ya que no puedo probarlo, pero sería algo así:

Código PHP:
Ver original
  1. $dir = 'files/';
  2. if (!is_dir ($dir)){
  3. echo "Error!, $dir no es un directorio";
  4. }
  5. $leerdir = scandir ($dir);
  6. $numero = count ($leerdir);
  7. if ($numero <= 2){
  8. echo '<img src="/fotos/vacio.jpg">';
  9. }
  #7 (permalink)  
Antiguo 06/11/2011, 04:48
Avatar de AlexServ  
Fecha de Ingreso: diciembre-2008
Ubicación: La Paz Bolivia
Mensajes: 97
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

NO funciona lo cambie al nombre de la carpeta donde están las fotos ni así, Ahora ya no aparece ni el vacio.jpg ni el hola.jpg
Código PHP:
$dir 'fotos/';
if (!
is_dir ($dir)){
echo 
"Error!, $dir no es un directorio";
}
$leerdir scandir ($dir);
$numero count ($leerdir);
if (
$numero <= 2){
echo 
'<img src="/fotos/vacio.jpg">';

__________________
Noticias Bolivianas - La música es maravillosa Mp3 Bolivia
  #8 (permalink)  
Antiguo 06/11/2011, 04:58
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

¿Qué versión de PHP usas? ¿Qué error te muestra?
  #9 (permalink)  
Antiguo 06/11/2011, 05:03
Avatar de AlexServ  
Fecha de Ingreso: diciembre-2008
Ubicación: La Paz Bolivia
Mensajes: 97
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

Uso PHP versión 5.2.14
__________________
Noticias Bolivianas - La música es maravillosa Mp3 Bolivia
  #10 (permalink)  
Antiguo 06/11/2011, 05:06
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: Poner imagen alternativa si la carpeta (/files) esté vacia

El código que yo escribí sólo mostrará la imagen vacio.jpg si la array de scandir es igual o inferior a 2, así que si estás usando un directorio con archivos no mostrará nada.

Tienes que adaptar tu código añadiendo parte de lo que escribí yo. A menos que muestre un error lo que yo escribí, si es así dime en que línea.

Etiquetas: files, vacias, carpetas
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 23:39.