Foros del Web » Programando para Internet » PHP »

Ver contenido de Carpeta en el Host

Estas en el tema de Ver contenido de Carpeta en el Host en el foro de PHP en Foros del Web. Tengo acceso a carpetas mediante contraseña de mis clientes, mi servidor es linux y no muestra el contenido de la carpeta. ¿ Existe algun script ...
  #1 (permalink)  
Antiguo 29/06/2007, 02:30
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Ver contenido de Carpeta en el Host

Tengo acceso a carpetas mediante contraseña de mis clientes, mi servidor es linux y no muestra el contenido de la carpeta. ¿ Existe algun script php que me muestre el contenido de la carpeta en cuestión ? . Gracias.
__________________
byweb Soluciones Multimedia
  #2 (permalink)  
Antiguo 29/06/2007, 06:22
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Ver contenido de Carpeta en el Host

No estás dejando claro lo que estás haciendo, ni cómo, ni los mensajes de error que obtenés, si hay.

De todas formas, para leer el contenido de una carpeta podés usar los ejemplos en la página del manual: http://www.php.net/manual/es/function.readdir.php


Saludos.
  #3 (permalink)  
Antiguo 02/07/2007, 03:27
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ver contenido de Carpeta en el Host

Si, perdon lo que quiero es que el cliente mediante contraseña entre en su directorio y vea el contenido de este para descargarse por ejemplo imagenes y demas archivos. Gracias.
__________________
byweb Soluciones Multimedia
  #4 (permalink)  
Antiguo 02/07/2007, 04:21
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ver contenido de Carpeta en el Host

Gracias ALVLIN alli encontré el siguiente código:
Código PHP:
<?php
// Note que !== no existia hasta 4.0.0-RC2

if ($gestor opendir('/ruta/a/archivos')) {
    echo 
"Gestor de directorio: $gestor\n";
    echo 
"Archivos:\n";

    
/* Esta es la forma correcto de iterar sobre el directorio. */
    
while (false !== ($archivo readdir($gestor))) {
        echo 
"$archivo\n";
    }

    
/* Esta es la forma EQUIVOCADA de iterar sobre el directorio. */
    
while ($archivo readdir($gestor)) {
        echo 
"$archivo\n";
    }

    
closedir($gestor);
}
?>
Este archivo que debe de ir en la carpeta de el cliente en cuestion ?
Como lo nombro, como index.php. Gracias.
__________________
byweb Soluciones Multimedia
  #5 (permalink)  
Antiguo 02/07/2007, 12:21
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ver contenido de Carpeta en el Host

He logrado mediante el anterior archivo y nombrandolo index.php que me muestre la siguiente sentencia:
Gestor de directorio: Resource id #1 Archivos: imag03.jpg . .. index.php
Pero no puedo seleccionar ni bajar el archivo, solo me muestra lo que hay en el directorio, como modificar el codigo, para que los archivos que se muestran puedan descargarse ?. Gracias.
__________________
byweb Soluciones Multimedia
  #6 (permalink)  
Antiguo 02/07/2007, 12:27
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 23 años, 3 meses
Puntos: 9
Re: Ver contenido de Carpeta en el Host

Mmmm, facil, dependiendo de tu ubicación de tu carpeta y tu página, además de tener acceso total por web a esos archivos:
Código PHP:
<?php
// Note que !== no existia hasta 4.0.0-RC2
$directorio='/ruta/a/archivos';
if (
$gestor opendir($directorio)) {
    echo 
"Gestor de directorio: $gestor\n";
    echo 
"Archivos:\n";
 
    
/* Esta es la forma correcto de iterar sobre el directorio. */
    
while (false !== ($archivo readdir($gestor))) {
        echo 
"$archivo\n";
    }
 
    
/* Esta es la forma EQUIVOCADA de iterar sobre el directorio. */
    
while ($archivo readdir($gestor)) {
        echo 
"<a href='".$directorio."/".$archivo."'>".$archivo."</a><br>";
    }
 
    
closedir($gestor);
}
?>
  #7 (permalink)  
Antiguo 04/07/2007, 02:44
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ver contenido de Carpeta en el Host

Pues no me abre el directorio en cuestión, no se que es lo que fallar, pero me muestra:
Gestor de directorio: Resource id #1 Archivos: imag03.jpg . .. index.php.
pero no muestra los archivos como para descarga. Que esta fallando ? Gracias.
__________________
byweb Soluciones Multimedia
  #8 (permalink)  
Antiguo 04/07/2007, 08:58
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Ver contenido de Carpeta en el Host

Pues es claro que lo que tenés que hacer es convertirlos en enlaces HTML:
Código PHP:
echo '<a href="'.$archivo.'">'.$archivo."</a>\n"
en vez de solo
Código PHP:
echo "$archivo\n"
En realidad lo que deberías hacer es estudiar un poco el código para poder integrar esa salida en una página con diseño y todo, y también evitar los "." y "..", además de las subcarpetas o tipos de archivos que no quieras permitir.

No es difícil, lo único que tendrías que hacer es seguir investigando las funciones del sistema de archivos y las funciones de cadenas.


Saludos.
  #9 (permalink)  
Antiguo 13/07/2007, 03:36
Avatar de byweb  
Fecha de Ingreso: marzo-2006
Ubicación: Lucena (Cordoba)
Mensajes: 36
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ver contenido de Carpeta en el Host

Si ya he envestigado un poco pero claro el problema es que como es una cuenta FTP, veo los enlaces de los archivos pero al clickar sobre ellos me pone FORBIDEN DON´T PERMISION. Que tendria que hacer entonces, quitarle la protección a las carpetas seria una locura no ?
__________________
byweb Soluciones Multimedia
  #10 (permalink)  
Antiguo 13/07/2007, 06:24
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Ver contenido de Carpeta en el Host

No sería una buena idea, no.
Quizás puedas encontrar un "file manager" php para integrar en tu sitio.
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 14:08.