Foros del Web » Programando para Internet » PHP »

extraer nombres de archivos de un servidor

Estas en el tema de extraer nombres de archivos de un servidor en el foro de PHP en Foros del Web. Buenas tardes. Tengo un problemita para extraer los nombres de los archivos de un directorio que tengo en un servidor web, voy a comentar todo ...
  #1 (permalink)  
Antiguo 30/05/2011, 14:05
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
extraer nombres de archivos de un servidor

Buenas tardes.

Tengo un problemita para extraer los nombres de los archivos de un directorio que tengo en un servidor web, voy a comentar todo desde el principio:

Utilicé un efecto con jquery para pasar las hojas de un diario digital como si fuera un libro. Con php comencé a contar los archivos que hay en la carpeta del diario digital para que construyera tantos divs sean necesarios con respecto a los archivos que se encuentran en el directorio del servidor.

Para ello usé el siguiente código:

Código PHP:
$dir "aquí va el path";
$handle=opendir($dir);  
$total 0;
while (
$file readdir($handle)){  
    if (
$file != "." && $file != ".."){  
       
$total++;  
    }  
}  

// Este código cuenta los archivos que existen en el directorio 
Para crear los divs tengo el siguiente código:

Código PHP:
<div id="mybook2">
    <div class="b-load">
        
       <?php
            
for ($i 0$i<=$total$i++) {
       
?>    
               <div>
                    <?php echo'<img src= "aquí url de la imagen"/>'?> 
                </div>
          <?php ?>
           </div>
</div>
<?php closedir($handle); ?>
He tratado de usar "basename" para extraer el nombre pero la variable viene vacía, necesito el nombre del archivo y su extensión para poder colocarlos en una variable dentro del for que construye los divs, por cada imagen que consiga se crea un div o esa sería la idea... realmente ya no se que más utilizar para que eso pueda funcionar.

Me podría alguien orientar por favor?

Agradecida de antemano, me despido.
  #2 (permalink)  
Antiguo 30/05/2011, 14:13
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

modifica el primer código así:

Código PHP:
while ($file readdir($handle)){   
    if (
$file != "." && $file != ".."){   
       
$total++;
       
$nombre[$total]=$file;
    }   

y luego el segundo código así:

Código PHP:
<div id="mybook2"> 
    <div class="b-load"> 
       <?php 
            
for ($i 0$i<=$total$i++) { 
       
?>     
               <div> 
                    <?php echo'<img src= "'.$dir."/".$nombre[$i].'"/>'?>  
                </div> 
          <?php ?> 
           </div> 
</div>
suponiendo que el nombre del archivo lo quieres como dirección de la imagen y que ambos códigos pertenecen al mismo archivo.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #3 (permalink)  
Antiguo 30/05/2011, 14:22
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

aunque ahora que lo pienso, por que guardar las direcciones en una variable cuando simplemente podrías hacer esto?:


Código PHP:
<div id="mybook2"> 
    <div class="b-load"> 
<?php 
$dir 
"aquí va el path"
$handle=opendir($dir);   
$total 0
while (
$file readdir($handle)){   
    if (
$file != "." && $file != ".."){
           echo 
"<div><img src= '$dir/$file'/></div>";
    }   

?>
     </div> 
</div>
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #4 (permalink)  
Antiguo 30/05/2011, 14:53
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

Hola!

Muchísimas gracias por tu respuesta!, se me olvidó comentar en el post que estoy con un servidor que tiene php 4.3.9 :S! no se si eso será lo que está haciendo que no pueda entrar en el directorio, realmente he hecho tantas cosas que no se que pensar, probé los dos códigos que acabas de postear y nada...
  #5 (permalink)  
Antiguo 30/05/2011, 16:55
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

en ese caso dime la ubicación del archivo php con el código, la ubicación de la carpeta con las imágenes y la ubicación como la estás poniendo en la variable $dir.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #6 (permalink)  
Antiguo 31/05/2011, 07:47
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

La ruta donde se encuentra el php con el código es wp-content/df_digital, las imagenes se encuentran en wp-content/df_digital/diario_digital, el path que le estoy colocando a $dir es wp-content/df_digital/diario_digital, cuando ejecuto el código y verifico por la herramienta de desarrollo del navegador me aparece la ruta donde estan las imagenes pero no las muestra, aparece la imagen de path roto, tengo dos imagenes en ese directorio y el nombre de las mismas no las toma, la variable $nombre está vacía.
  #7 (permalink)  
Antiguo 31/05/2011, 07:59
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

ok, la variable $dir debe ser diario_digital

$dir="diario_digital";

esto es por que tu archivo ya se encuentra dentro de wp-content/df_digital, por lo que solo le falta saber el nombre de la carpeta diario_digital :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #8 (permalink)  
Antiguo 31/05/2011, 08:59
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

Ay Dios, que va no hace nada! no me trae el nombre de los archivos... el path esta bien pero no aparecen las imagenes..., que estaré haciendo mal?? es como si no abriera el directorio... el opendir debería trabajar sobre php 4 no? ya no se ni que pensar, ejejejeje
  #9 (permalink)  
Antiguo 31/05/2011, 10:47
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

todas las instrucciones que estas usando funcionan en PHP 4

opendir()
readdir()

así que debe ser algún problema que no hemos pensado

cambia el echo así:

Código PHP:
Ver original
  1. echo "$dir/$file";

y ve si sale la ruta de las imagenes.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #10 (permalink)  
Antiguo 31/05/2011, 12:55
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

Sale lo que tiene $dir solamente... no quiere agarrar nada que tenga que ver con los archivos del directorio.
  #11 (permalink)  
Antiguo 31/05/2011, 13:15
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

pon tu código completo (incluyendo la dirección de $dir), debe ser algo que no has mencionado.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #12 (permalink)  
Antiguo 31/05/2011, 13:29
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

Código PHP:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Diario Frontera</title>
<script src="wp-content/df_digital/booklet/jquery.min.js" type="text/javascript"></script>
<script src="wp-content/df_digital/booklet/jquery-ui.min.js" type="text/javascript"></script>
<script src="http:wp-content/df_digital/booklet/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="wp-content/df_digital/booklet/jquery.booklet.1.2.0.min.js" type="text/javascript"></script>
<link href="wp-content/df_digital/booklet/jquery.booklet.1.2.0.css" type="text/css" rel="stylesheet" media="screen, projection, tv" />
</head>

<body>
<?php

$dir 
"wp-content/df_digital/diario_digital";
$handle=opendir($dir);  
$total 0;
while (
$file readdir($handle)){  
    if (
$file != "." && $file != ".."){  
       
$total++;
       
$nombre[$total]= $file;
    }  
}  
?>
<div id="mybook2">
    <div class="b-load">
        
       <?php
        
for ($i 0$i<=$total$i++) {
       
?>    
       <div>
           <?php echo'<img src= "'.$dir."/".$nombre[$i].'"/>'?> 
        </div>
       <?php ?>
       
    </div>
</div>
<?php closedir($handle); ?>
 
<script type="text/javascript">
$(function() {
    //single book
    
    $('#mybook').booklet();

    //multiple books with ID's
    $('#mybook2').booklet({
            manual:   false,
            overlays: true,
            hovers:   false
        });

    //multiple books with a class
    $('.mycustombooks').booklet();
});
</script>
</body>
</html>
Me fui por la primera opción que me diste, porque la segunda opción no hacia nada, estoy muy agradecida por tu diligencia. Saludos!
  #13 (permalink)  
Antiguo 31/05/2011, 13:39
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

cambia el dir por diario_digital

$dir = "diario_digital";

es un placer ayudarte, no sabía que eras mujer! si lo hubiese sabido te habría tratado mejor XD

aunque ahora que lo pienso... kim es nombre de mujer
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #14 (permalink)  
Antiguo 31/05/2011, 13:47
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

jajajajajaja!!!! no me has tratado mal! todo lo contrario jejeje.

Mira ya yo coloqué solamente esa carpeta, y en la ruta me aparece la raiz y esa carpeta, algo así http://www.misitio.com/diario_digital ruta que no es cierta, pues deberia ser http://www.misitio.com/wp-content/df...diario_digital, esa es la ruta de las imagenes.

Disculpa si te enrredo con todo esto, pero ya tengo varios dias atascada en este punto!! y es lo único que me falta para terminar y entregar.
  #15 (permalink)  
Antiguo 31/05/2011, 14:06
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: extraer nombres de archivos de un servidor

mmmmmmmmmmmmmm...

revisando tu código completo tienes razón, al parecer hay algunas redirecciones en el .htaccess, parece ser que la página que estas editando es "incluida" en un archivo http://www.misitio.com/index.php o similar, en ese caso tenemos 2 direcciones, para recorrer los archivos necesitaras solo el nombre de la carpeta (este incluido o no el archivo) sin embargo para mostrar las imágenes tendrás que usar esa ruta.

Tendrías que cambiar solo estas lineas.

Código PHP:
Ver original
  1. $dir = "wp-content/df_digital/diario_digital";
  2. $folder = "diario_digital";
  3.  
  4. $handle=opendir($folder);

dejando el resto igual (usando $dir)

y esa sería también la razón de por que el segundo código no hacía nada, espero que sea tal como creo.

alguna vez trabaje con Word Press, pero no recuerdo como era la arquitectura XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #16 (permalink)  
Antiguo 31/05/2011, 14:28
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: extraer nombres de archivos de un servidor

Muchísimas gracias!! ahora si funcionó!! ahora tendría que verificar realmente que fue lo que pasó, no se como llegaste a esa conclusión pero lo cierto es que fue la solución.

Fue muy grata tu asistencia en el foro, saludos y hasta una próxima oportunidad!!

Etiquetas: nombres, servidor
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

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 23:46.