Foros del Web » Programando para Internet » PHP »

Buscar imagenes en un directorio

Estas en el tema de Buscar imagenes en un directorio en el foro de PHP en Foros del Web. Holas, Me parece que no es algo muy difícil de hacer, pero todavia soy novato . Bueno, lo que necesito es un script que busque ...
  #1 (permalink)  
Antiguo 22/10/2009, 11:03
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Sonrisa Buscar imagenes en un directorio

Holas,

Me parece que no es algo muy difícil de hacer, pero todavia soy novato .

Bueno, lo que necesito es un script que busque imagenes de una carpeta, y que luego las imprima en este script.


Hice este:
Código PHP:
   if ($_SESSION['usuarioregistrado']){
   
$usuario $_SESSION['nombreusuarioregistrado'];
   
$imgsubida =  "imgusuarios/$usuario/";
    if (
is_dir($imgsubida)){
    
    
$directorio dir("$imgsubida");
    
    while (
false !== ($archivo $directorio->read())){
    
    echo 
"<p>$archivo</p>";
    
    }
    
$directorio->close(); 
}


Pero no sé como sacarle los '.' y '..' que genera. Tampoco sé que hacer con los valores que devuelve.

Desde ya muchas gracias,

Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter
  #2 (permalink)  
Antiguo 22/10/2009, 11:23
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Buscar imagenes en un directorio

Puedes usar un if para ignorar los '.' y '..', y usar mime_content_type para obtener el mime type del archivo y con este verificar si es una imagen, si lo es la despliegas.
  #3 (permalink)  
Antiguo 22/10/2009, 13:31
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Sonrisa Respuesta: Buscar imagenes en un directorio

Holas,

He usado mime_content_type, pero no me ha servido. El if funciona bien.

Las mejoras que incorporé:
Código PHP:
if ( ($archivo != '.') and ($archivo != '..'))
    { 
    
$isimg mime_content_type("$archivo");
     if (
$isimg == "image/jpeg"){
      echo 
"<p><img src='$imgsubida/$archivo' width='160' height='160'/></p>";
     } 
    } 
//filtro 
Que puede ser?

Muchas gracias,

Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter
  #4 (permalink)  
Antiguo 22/10/2009, 14:10
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Buscar imagenes en un directorio

Prueba hacer un echo a ver que te devuelve mime_content_type, y checa que hay varios mime types para imagenes jpeg
  #5 (permalink)  
Antiguo 22/10/2009, 14:45
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Buscar imagenes en un directorio

Código PHP:
echo $isimg
No tira nada.

Las imagenes se muestran como que el if que hice, no existiera


Muchas gracias,


Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter
  #6 (permalink)  
Antiguo 22/10/2009, 15:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Buscar imagenes en un directorio

hey... error...
Código PHP:
$isimg mime_content_type("$ruta/$archivo"); 
el pasar el $archivo directamente no esta bien... te falta la ruta... porque readdir() o lo que uses solo devuelve el nombre del archivo... sin su ruta completa!!

has un echo del archivo antes de pasarlo por la función de MIME, debe estar con su ruta completa... si no la tiene, concatenasela antes de usar tal variable
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 22/10/2009, 15:42
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Buscar imagenes en un directorio

Cita:
Iniciado por pateketrueke Ver Mensaje
hey... error...
Código PHP:
$isimg mime_content_type("$ruta/$archivo"); 
el pasar el $archivo directamente no esta bien... te falta la ruta... porque readdir() o lo que uses solo devuelve el nombre del archivo... sin su ruta completa!!

has un echo del archivo antes de pasarlo por la función de MIME, debe estar con su ruta completa... si no la tiene, concatenasela antes de usar tal variable
Holas,

Tienes razón con lo de la ruta, ya lo arreglé, lo que no me quedo muy claro fué lo del MIME; Lo imprimis y luego lo verificas?

El código, tal cual está ahora es asi: (menos el session_start())
Código PHP:
    if ($_SESSION['usuarioregistrado']){
      
$usuario $_SESSION['nombreusuarioregistrado'];
      
$imgsubida =  "imgusuarios/$usuario/";
      if (
is_dir($imgsubida)){
      
        
$directorio dir("$imgsubida");
    
        while (
false !== ($archivo $directorio->read())){
          if ( (
$archivo != '.') and ($archivo != '..')){
            
$isimg mime_content_type("$imgsubida/$archivo");
            echo 
$isimg;
            if (
$isimg "image/jpeg" || "image/pjpeg"){
              echo 
"<p><img src='$imgsubida/$archivo' width='160' height='160'/></p>";
        }
            } 
          }
          
$directorio->close();
          if (
is_dir($imgsubida)){
            echo 
"<img src='$imgsubida' width='120' height='120' />";
            echo 
'<a href="subirfoto.php">Subir otra foto</a>';
          } else {
          echo 
'No ha cargado ninguna foto todavia. <a href="subirfoto.php">Subir nueva foto</a>';
          }
        } 
      else {
      echo 
'No ha cargado ninguna foto todavia. <a href="subirfoto.php">Subir nueva foto</a>';
      }
    } 
Muchas gracias,

Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter

Última edición por murderer; 22/10/2009 a las 15:47
  #8 (permalink)  
Antiguo 22/10/2009, 16:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Buscar imagenes en un directorio

Cita:
Iniciado por murderer Ver Mensaje
[...] lo que no me quedo muy claro fué lo del MIME; Lo imprimis y luego lo verificas? [...]
si, pero solo por cuestiones de depuración... solo para que te dieras cuenta...

después, si sirve el código.. omite eso, suerte!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 22/10/2009, 19:26
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Sonrisa Respuesta: Buscar imagenes en un directorio

Cita:
Iniciado por pateketrueke Ver Mensaje
si, pero solo por cuestiones de depuración... solo para que te dieras cuenta...

después, si sirve el código.. omite eso, suerte!!
u.u Sigue sin funcionar el verificador con mime, el resto anda todo bien.

Si hay otra alternativa, les pido por favor que me lo digan,

Muchas gracias,

Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter
  #10 (permalink)  
Antiguo 23/10/2009, 10:55
Avatar de murderer  
Fecha de Ingreso: marzo-2009
Ubicación: Argentina/Misiones/Iguazu/Localhost
Mensajes: 196
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Buscar imagenes en un directorio

Tecnicamente, está solucionado ya que el titulo es "buscar imagenes en un directorio". Asi que doy este tema como solucionado y va karma para los 2.

Con el tema de la seguridad de la carga, voy a ponerlo en otro tema.


Muchas gracias,

Saludos!
__________________
"Cuando te propones una meta todo el mundo conspira para que puedas lograrlo." Puedes encontrame en Twitter
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:20.