elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Para subir de nivel
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Para subir de nivel  (Leído 4,728 veces)
dimitrix


Desconectado Desconectado

Mensajes: 4.847



Ver Perfil WWW
Para subir de nivel
« en: 1 Septiembre 2008, 16:23 pm »

Bueno, pues tengo un problemita, no consigo ver los archivos que hay dentro de una carpeta con este código:

Código
  1. <?php
  2.  
  3. if ($gestor = opendir(".")) {
  4.    while (false !== ($archivo = readdir($gestor))) {
  5.        if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
  6.            echo '<img border="0" src="img/icon_file.gif"> ';
  7.            echo '<a href="?h=';
  8. echo "$archivo\n";
  9. echo '" style="text-decoration: none">';
  10. echo "$archivo\n";
  11. echo "</a>";
  12. echo "<br>";
  13.        }
  14.    }
  15.    closedir($gestor);
  16. }
  17.  
  18.  
  19.  
  20. ?>

Lo que quiero es ver los archivos que hay dentro de la carpeta por ejemplo "img" y hago lo siguiente:

Código
  1. <?php
  2.  
  3. if ($gestor = opendir("./img")) {
  4.    while (false !== ($archivo = readdir($gestor))) {
  5.        if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
  6.            echo '<img border="0" src="img/icon_file.gif"> ';
  7.            echo '<a href="?h=';
  8. echo "$archivo\n";
  9. echo '" style="text-decoration: none">';
  10. echo "$archivo\n";
  11. echo "</a>";
  12. echo "<br>";
  13.        }
  14.    }
  15.    closedir($gestor);
  16. }
  17.  
  18.  
  19.  
  20. ?>

Pero no me funciona he probado "img", "/img" lo he probado de todos modos y nada, en un código parecido si que me va perfectamente, pero ahí no se que pasa que no me va. No se que puede ser.

Un saludo.


« Última modificación: 1 Septiembre 2008, 16:27 pm por dimitrix » En línea




cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: Para subir de nivel
« Respuesta #1 en: 1 Septiembre 2008, 17:47 pm »

Probaste con "../"  :huh:

Dependerá de donde se encuentre el script, por ejmplo, para este ejemplo yo me encuentro en la carpeta "htdocs" y para ver los archivos de la misma, le paso como parámetro la siguiente cadena:

Código
  1. $dir="../htdocs";
  2. if ($gestor = opendir($dir))

Pero si quisiera ver los archivos de una carpeta que se encuentra en el mismo directorio que el script, entonces basta con esto:
Código
  1. $dir = ("Carpeta/");

Cada vez que quieras ir atrás usas otro "../"


En línea

dimitrix


Desconectado Desconectado

Mensajes: 4.847



Ver Perfil WWW
Re: Para subir de nivel
« Respuesta #2 en: 1 Septiembre 2008, 18:00 pm »

Si lo se, lo he probado de todas las menera y nada, el código entero es este:

Código
  1. <head>
  2. <meta http-equiv="Content-Language" content="es">
  3. </head>
  4.  
  5.  
  6. <table border="0" width="1242" id="table1">
  7. <tr>
  8. <td width="160">&nbsp;</td>
  9. <td width="53">
  10. <p align="center"></td>
  11. <td width="1015">
  12. <p align="center">Navegador</td>
  13. </tr>
  14. <tr>
  15. <td width="160">
  16.  
  17. <?php
  18. echo ("<b>Carpetas: </b><br>");
  19.  
  20. if ($gestor = opendir(".")) {
  21.    while (false !== ($archivo = readdir($gestor))) {
  22.        if ($archivo != "." && $archivo != "img" && $archivo != ".." && is_dir($archivo)==TRUE) {
  23.            echo '<img border="0" src="img/icon_folder_open.gif"> ';
  24.            echo '<a href="?f=';
  25. echo "$archivo\n";
  26. echo '" style="text-decoration: none">';
  27. echo "$archivo\n";
  28. echo "</a>";
  29. echo "<br>";
  30.        }
  31.    }
  32.    closedir($gestor);
  33. }
  34.  
  35. echo ("<br><b>Historiales: </b><br>");
  36.  
  37. if ($gestor = opendir(".")) {
  38.    while (false !== ($archivo = readdir($gestor))) {
  39.        if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
  40.            echo '<img border="0" src="img/icon_file.gif"> ';
  41.            echo '<a href="?h=';
  42. echo "$archivo\n";
  43. echo '" style="text-decoration: none">';
  44. echo "$archivo\n";
  45. echo "</a>";
  46. echo "<br>";
  47.        }
  48.    }
  49.    closedir($gestor);
  50. }
  51.  
  52.  
  53.  
  54. ?>
  55.  
  56. </td>
  57. <td width="53">
  58. </td>
  59. <td width="1015"><?php include($_GET[h]) ?></td>
  60. </tr>
  61. </table>

Estoy haciendo una aplicación publica para leer el historial de windows de la aplicación Pigdin sin el programa, para así no perderlos y poderlos leer de una forma "amena", aunque eso ahora es lo de menos.

Mira, tengo el código dentro del "index.php" y luego tengo una carpeta llamada "img" con dos imágenes que quiero que me liste para probar.

No me lista nada, pero si creo carpetas y archivos al lado de "index.php" y uso el código que te he pasado me lista todo bien.

En línea




cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: Para subir de nivel
« Respuesta #3 en: 1 Septiembre 2008, 19:10 pm »

Citar
No me lista nada, pero si creo carpetas y archivos al lado de "index.php" y uso el código que te he pasado me lista todo bien.

a bueno... mira:

Citar
file_exists
(PHP 3, PHP 4, PHP 5)

Devuelve TRUE si el archivo o directorio especificado por nombre_archivo existe; o FALSE de lo contrario.

En windows, use //nombre_computadora/recurso/nombre_archivo o \\nombre_computadora\recurso\nombre_archivo para revisar archivos en recursos compartidos de red.

En ese caso, la cadena que le pasas a is_file($file) esta incompleta, ya que readdir() solo te devuelve el nombre del fichero.

Código
  1. if ($gestor = opendir("img/"))
  2. {
  3.    while (false !== ($archivo = readdir($gestor)))
  4.   {
  5.        $file = "./img/".$archivo;
  6.  
  7. if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($file)==TRUE)
  8.       {
  9.  
En línea

dimitrix


Desconectado Desconectado

Mensajes: 4.847



Ver Perfil WWW
Re: Para subir de nivel
« Respuesta #4 en: 1 Septiembre 2008, 19:19 pm »

Bien, ya me funciona el código, muchas gracias, haber si tardo poco en terminarlo y lo subo por si a alguien le interesa esto, un saludo.
En línea




Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Codigo para subir swf
PHP
CAR3S? 2 3,382 Último mensaje 10 Febrero 2011, 21:20 pm
por CAR3S?
trabajo para info (nivel de eso (pero BAJISIMO!!!!))
Dudas Generales
Naslednik 3 3,662 Último mensaje 7 Abril 2011, 23:44 pm
por SuperDraco
subir nivel de audio en video
Multimedia
maxmag 3 5,527 Último mensaje 18 Noviembre 2011, 17:19 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines