Código PHP:
<?php
$dir=opendir('.');
while(false !== ($file= readdir($dir))){
echo $file."<br>";
}
closedir($dir);
?>
| ||||
ya lo probe ya lo probe y no marca ningun error. por que no checas en donde se encuentra tu programa mira aqui te mando el mio. estoy haciendolo en linux y lo deposito en la carpeta /var/www/html <html> <body> <form> <?php $dir = opendir('Directorio_actual'); while(false !== ($file = readdir($dir))) { echo "$file"."<br>"; } closedir($dir); ?> </form> </body> </html> espero te sirva |
| ||||
es que no tengo definido un directorio, es decir, estoy leyendo el directorio actual, supongamos que tengo mi web : www.bhonox.com y luego cree un directorio llamado prueba donde puse el script, ahora el script esta dentro de prueba y quiero leer ese directorio, osea los archivos que tiene... ya que el script no esta antes
__________________ Atte Real BHONOX Programador Cervecero! :borracho: Lenguajes vengan a MI!! |
| ||||
Wenass: Cómo puedo hacer para que sólo me lea las carpetas que hay dentro de ese directorio? Es decir, tengo un directorio llamado "fotos" y dentro de este hay otras subcarpetas llamadas "0001", "0002", "0003"... Cómo puedo hacer para que me devuelva: 0001 0002 0003 ... Y si además se puede cambiar automáticamente a: 1 2 3 ... y crear un link a cada subcarpeta (cada una de ellas contiene un "index.php") sería genial . Se puede? Salu2.
__________________ http://www.sexoparamo.com |
| |||
ORPHEO... si, se puede .. pero: Lo mejor será q te pases por el manual de PHP .. seccion "manipulación de directorio y ficheros" y te empapes las fuciones de leer directorios (ficheros y sub-directorios) .. ahí veras como puedes filtrar los directorios q quieras o cambiarte de directorio si lo necestias ... (ejemplos en cada funcion tienes y en los comentarios de los usuarios mas ..) http://www.php.net/manual/en/ref.filesystem.php Un saludo, |
| ||||
Jo, macho... Me temo que soy demasiado novato para esto... He ido a esa página y lo he leído, pero no me entero de mucho... y encima en inglés! No podrías ayudarme un poco? Salu2.
__________________ http://www.sexoparamo.com |
| |||
Hola, Si tu problema es el ingles, ya sabes que la propia www.php.net lo tienen tambien en castellano. Y para lo que quieres, si ya te han dado el codigo para recorrer todas las entradas (ficheros y directorios) de un directorio, solo tienes que ir comprobando con is_dir() si es un directorio (cuidado con . y .. ). Si es directorio creas el link y si no, sigues con la siguiente entrada. Y para cambiar de la cadena 00001 a 1 quizas te vale con pasarlo a entero con settype() o haciendo un cast de la forma $v=(int)"0001"; no estoy seguro. Espero haber sido de ayuda.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
Gracias por responder, josemi Vamos a ver... En primer lugar tengo este código: Código PHP: while(false !== ($file = readdir($dir))) { if $file is_dir echo "$file"."<br>"; } Por otra parte, qué es eso de . y ..? Salu2.
__________________ http://www.sexoparamo.com |
| |||
Claro, que hay muchas personas que te pueden contestar lo que pides, el detalle es que ha esas mismas personas les gusta que tambien tu hagas tu tarea. Es decir que te quiebres un rato la cabeza programando lo que necesitas hacer. Si despues de eso tienes dudas bueno lo preguntas publicando la parte de tu codigo y la duda que tienes. Y esto sucede por que hay que recordar que aqui la gente te contesta cuando puede. Pero bueno como quiera una ayudita se te puede dar para que inicies con tus actividades. 1.- abrir directorio. 2.- leer directorio. 3.- mientras lees el direcotrio preguntas si existen subcarpetas. 5.- mandas a pantalla esas carpetas. 4.- si no hay subcarpetas terminas. Ah, y en cuanto al manual en ingles no hay problema tambien lo hay en español. http://www.php.net/manual/es/ |
| |||
Ultimaménte siempre remito al manual en su versión en Ingles .. No es porque me guste mas en ingles .. sino porque está mas completo q la versión en castellano .. En cada funcion o tema del manual en linea de PHP tienes par elegir entre un buen nuemor de idomas para leerlo .. Pero como decía te recomiendo q leas si quieres el "tema" por encima en castellano y luego lo compares con el ingles . si ves mas cosas en ingles . ya sabes. Por cierto .ORPHEO .. ya es hora de que con los consejos que se te han dado te pongas hacer algo tu y empezar la cosa .. Si tienes dudas inicia un nuevo mensaje .. Un saludo, |
| ||||
No es por no trabajar... Es que aún me falla mucho la sintaxis. He probado varias cosas, pero siempre me da algún tipo de error. Ahora estoy en esto: Código PHP: "Parse error: parse error in /home/sexoparamo/fo/Preciosas/Modelos/indice.php on line 14" que es: Código PHP: Salu2.
__________________ http://www.sexoparamo.com |
| ||||
Bien, algo he conseguido (véis como me esfuerzo? ) Código: Código PHP: . .. 0001 0002 Y ahí acaba. Voy bien, no? Ahora bien, cómo elimino el . y lo .. ? Salu2.
__________________ http://www.sexoparamo.com |
| ||||
Bueno, he mejorado un poco el código, pero sigo sin poder quitar el . y los .. Código PHP: Salu2.
__________________ http://www.sexoparamo.com |
| ||||
Código PHP:
__________________ Usuario registrado de Linux #288725 |
| ||||
Gracias, epplestun. Pero tu código me daba error de argumento no válido. Lo he mezclado con el mío, así: Código PHP: Sólo me queda un pequeño detalle. Hay alguna manera de que me devuelva 1 2 3 ... en lugar de 0001 0002 0003..., sin tener que cambiar los nombres de las carpetas (cosa que no quiero)? Salu2.
__________________ http://www.sexoparamo.com |
| ||||
nirmal que no te funcione, el argumento que le paso yo a la funcion es una variable del nombre que yo e querido, tienes que ponerlo a tu medida y todo te funcionara sin probmelas, revisa la pagina del manual ofical, php.net/manual/es/ref.dir.php
__________________ Usuario registrado de Linux #288725 |