Comunidad de diseño web y desarrollo en internet online

No me lista los archivos del directorio

Citar            
MensajeEscrito el 21 Sep 2009 05:25 pm
Hola a todos, me acabo de leer un tutorial de aquí que explicaba como listar los archivos.

Lo he seguido al pie de la letra, y me ha quedado esto:

Código PHP :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Page title</title>
</head>
<body>

<?php
$dir = "/home/distriker/domains/betaconsolas.com/public_html/lacaja/tmp/" ;

echo "<XML encoding='UTF-8' standalone='yes' version='1.9'>\n" ;
echo "  <folder>\n" ;

if (is_dir($dir))
{
if ($gd = opendir($dir))
{
while (($archivo = readdir($gd)) !== false)
{
if ($archivo != "." & $archivo != ".." & $archivo != "index.php")
{
if (is_dir($archivo))
{
echo "   <folder>$archivo</folder>\n" ;
}
else
{
echo "   <file>$archivos</file>\n" ;
}
}
}
closedir($gd) ;
}
}

echo "  </folder>\n" ;
echo "</XML>\n" ;

?>

</body>
</html>


El problema es que no me ha listado nada :S, observen.

¿Qué os parece?

¿Qué puede estar pasando?

Saludos

Por Distriker

Claber

955 de clabLevel

9 tutoriales

 

Las Palmas De Gran Canarias

firefox
Citar            
MensajeEscrito el 22 Sep 2009 03:48 am
Pues el primer if no se está cumpliendo, lo que significa que el directorio no es un directorio (por que no existe u otra causa).

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 22 Sep 2009 03:02 pm
Pero si está creado ese directorio :S

Una pregunta, ¿el fallo podría ser aquí?

Código PHP :

echo "   <file>$archivos</file>\n" ; 


¿Será en vez de archivos, será archivo como en las otras variables?

Saludos

Por Distriker

Claber

955 de clabLevel

9 tutoriales

 

Las Palmas De Gran Canarias

firefox
Citar            
MensajeEscrito el 22 Sep 2009 03:56 pm
Bueno, lo he solucionado a medias, resulta ser de que lo dejé así:

Código PHP :

<?php
$dir = "tmp/" ;

echo "<XML encoding='UTF-8' standalone='yes' version='1.9'>\n" ;
echo "  <folder>\n" ;

if (is_dir($dir))
{
if ($gd = opendir($dir))
{
while (($archivo = readdir($gd)) !== false)
{
if ($archivo != "." & $archivo != ".." & $archivo != "index.php")
{
if (is_dir($archivo))
{
echo "   <folder>$archivo</folder>\n" ;
}
else
{
echo "   <file>$archivo</file>\n" ;
}
}
}
closedir($gd) ;
}
}

echo "  </folder>\n" ;
echo "</XML>\n" ;

?>


He cambiado esto:

Código PHP :

$dir = "tmp/" ;


Y esto:

Código PHP :

echo "   <file>$archivo</file>\n" ;


Bien, pues al principio no me listaba nada, pues pensé en poner esto:

Código PHP :

$dir = "tmp/" ;


Así:

Código PHP :

$dir = "../tmp/" ;


Entonces, tampoco me listaba, por lo que esta vez para probar si el codigo tenía otro fallo, pues decidí crear una carpeta llamada /tmp dentro de la carpeta en la que se encuentra este listado, y le puse dos archivos .html y una imagen, y lista todo perfectamente, pero el gran fallo es que no me lista subdirectorios, es decir, que si yo pongo:

Código PHP :

$dir = "../tmp/" ;


No me lista nada :S

¿Qué puedo hacer para que me liste otros directorios sin que las imagenes tengan que ser subidas a un directorio dentro del adm?

Saludos

Por Distriker

Claber

955 de clabLevel

9 tutoriales

 

Las Palmas De Gran Canarias

firefox
Citar            
MensajeEscrito el 22 Sep 2009 04:42 pm
Haz lo siguiente, por improbable que parezca. En el if donde tienes tres condiciones, cambia el "&" por "and".

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 22 Sep 2009 05:06 pm
Pues si :D, funciona :D, muchas gracias DriverOp ;)

Saludos

Por Distriker

Claber

955 de clabLevel

9 tutoriales

 

Las Palmas De Gran Canarias

firefox
Citar            
MensajeEscrito el 23 Sep 2009 01:53 am
De nada ;)

(La culpa es exclusivamente de Thompson, Kernighan y Ritchie)

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 23 Sep 2009 02:24 pm

DriverOp escribió:

De nada ;)

(La culpa es exclusivamente de Thompson, Kernighan y Ritchie)


Sisi, la culpa es de ellos :lol:

Una pregunta, ¿cómo podría hacer para que se liste también la fecha pero como separado en otra columna, ¿me entiendes?

Saludos

Por Distriker

Claber

955 de clabLevel

9 tutoriales

 

Las Palmas De Gran Canarias

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.