Foros del Web » Programando para Internet » PHP »

Explorador WEB

Estas en el tema de Explorador WEB en el foro de PHP en Foros del Web. Hola a todos. Se que esta pregunta que os voy a hacer es demasiado general pero por ahora es todo lo que mis responsables me ...
  #1 (permalink)  
Antiguo 27/05/2010, 03:19
 
Fecha de Ingreso: mayo-2010
Ubicación: Madrid
Mensajes: 74
Antigüedad: 13 años, 10 meses
Puntos: 0
Explorador WEB

Hola a todos.

Se que esta pregunta que os voy a hacer es demasiado general pero por ahora es todo lo que mis responsables me han transmitido y pretendo anticiparme a las tortas antes de que me caigan.

Por lo que he entendido pretenden ver el arbol de directorios del dominio vía Iexplorer y "en bonito".

¿Hay desarrollos ya hechos que se encarguen de hacer algo así?

Y si no los hay y hay que hacerlo a mano ¿sería complicado en PHP?

Gracias a todos y un saludo.
  #2 (permalink)  
Antiguo 27/05/2010, 03:32
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Explorador WEB

La verdad es que no lo sé, eso se puede configurar en el servidor, personalmente, no sé, pero hay servidores que por defecto te vienen así xD
__________________
Tengo una pregunta que a veces me tortura... ¿El loco soy yo o los locos son los demás?
  #3 (permalink)  
Antiguo 27/05/2010, 04:00
Avatar de Flow89  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 346
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: Explorador WEB

Claro que se puede, sería como hacer un sitemap.

Te dejo un script que pienso que te ayudara.. (Es XML).

Ya me diras algo.


Código XML:
Ver original
  1. <?
  2. /* Sitemap version 2.0 (C) copyright Metalhead 2003
  3. * Página web: [url]http://www.metalhead.ws/phpbin/[/url]
  4. * Este script se distribuye bajo los términos de la
  5. * Licencia Pública General GNU (GNU GPL)
  6. * Una copia de la GPL ha sido incluída con el script. */
  7. /* Sección de Configuración */
  8. $showsize = 1; /* Mostrar el tamaño de los archivos? 1 = sí, 0 = no */
  9. /* Array de tipos de archivos visualizados y sus respectivos iconos.
  10. * Sintaxis: $display[filetype] = "picture"; */
  11. $display[php] = "php.gif";
  12. $display[html] = "html.gif";
  13. $display[htm] = "html.gif";
  14. $display[shtml] = "html.gif";
  15. /* Array de directorios que no deben ser visualizados.
  16. * Sintaxis: $excludedir[] = "directory"; */
  17. $excludedir[] = "temp";
  18. $excludedir[] = "tmp";
  19. /* Array de archivos que no serán visualizados. */
  20. $excludefile[] = "index.php";
  21. ?>
  22. <html><head><title>Mapa del sitio web</title></head>
  23. <body>
  24. <b>Mapa del sitio web</b><p>
  25. <?
  26. $stime = gettimeofday();
  27. /* prueba inicial... */
  28. $root = getcwd();
  29. $pre = explode("/", $REQUEST_URI);
  30. array_pop($pre);
  31. $prefix = join("/", $pre);
  32. /* Si el script se encuentra en un subdirectorio, descomenta las
  33. * siguientes dos lineas para generar el árbol de todos los
  34. * archivos y directorios del servidor web */
  35. //$root = str_replace($prefix, "", $root);
  36. //$prefix = "";
  37. $root .= "/";
  38. /* Visualiza el nombre del servidor y el directorio */
  39. echo "<table cellspacing=0 cellpadding=0 border=0>\n";
  40. echo "<tr><td><img align=absmiddle src=server.gif> http://$SERVER_NAME";
  41. echo "$prefix/";
  42. echo "</td></tr><tr><td><img align=absmiddle src=vertical.gif></td></tr>\n";
  43. function get_extension($name)
  44. {
  45.    $array = explode(".", $name);
  46.    $retval = strtolower(array_pop($array));
  47.    return $retval;
  48. }
  49. /* Rekurencja... */
  50. function list_dir($chdir)
  51. {
  52.    /* algunas variables globales y un poco de orden */
  53.    global $root, $prefix, $PHP_SELF, $SERVER_NAME, $showsize, $display, $excludedir, $excludefile;
  54.    unset($sdirs);
  55.    unset($sfiles);
  56.    chdir($chdir);
  57.    $self = basename($PHP_SELF);
  58.   /* abrimos el directorio actual */
  59.   $handle = opendir('.');
  60.   /* leemos el directorio. Si el objeto
  61.   * es un directorio lo introducimos a
  62.   * $sdirs, si se trata de un archivo
  63.   * que nos interesa (exceptuando el
  64.   * que contiene este script), lo colocamos
  65.   * en $sfiles */
  66.   while ($file = readdir($handle))
  67.   {
  68.     if(is_dir($file) && $file !=
  69.       "." && $file != ".."
  70.       && !in_array($file,
  71.         $excludedir))
  72.    { $sdirs[] = $file; }
  73.     elseif(is_file($file)
  74.       && $file != "$self"
  75.      && array_key_exists(
  76.        get_extension($file),
  77.          $display)
  78.      && !in_array($file,
  79.        $excludefile))
  80.    { $sfiles[] = $file; }
  81.   }
  82.    /* contamos las barras para saber la profundidad a la que estamos
  83.     * o en la estructura de directorios y cuántos segmentos debemos
  84.     * usar de la rama en la que estamos */
  85.    $dir = getcwd();
  86.    $dir1 = str_replace($root, "", $dir."/");
  87.    $count = substr_count($dir1, "/") + substr_count($dir1, "\\");
  88.    /* mostramos por pantalla los nombres y obtenemos la lista recursiva de los
  89.     * directorios */
  90.    if(is_array($sdirs)) {
  91.       sort($sdirs);
  92.       reset($sdirs);
  93.       for($y=0; $y<sizeof($sdirs); $y++) {
  94.         echo "<tr><td>";
  95.          for($z=1; $z<=$count; $z++)
  96.         { echo "<img align=absmiddle src=vertical.gif>&nbsp;&nbsp;&nbsp;"; }
  97.          if(is_array($sfiles))
  98.          { echo "<img align=absmiddle src=verhor.gif>"; }
  99.          else
  100.          { echo "<img align=absmiddle src=verhor1.gif>"; }
  101.          echo "<img align=absmiddle src=folder.gif>
  102.                <a href=\"http://$SERVER_NAME$prefix/$dir1$sdirs[$y]\">$sdirs[$y]</a>";
  103.          list_dir($dir."/".$sdirs[$y]);
  104.       }
  105.    }
  106.    chdir($chdir);
  107.    /* visitamos cada uno de los elementos del array de archivos
  108.     * y los imprimimos */
  109.    if(is_array($sfiles)) {
  110.       sort($sfiles);
  111.       reset($sfiles);
  112.       $sizeof = sizeof($sfiles);
  113.       /* ¿qué tipos de ficheros deben ser visualizados? */
  114.       for($y=0; $y<$sizeof; $y++) {
  115.         echo "<tr><td>";
  116.          for($z=1; $z<=$count; $z++)
  117.         { echo "<img align=absmiddle src=vertical.gif>&nbsp;&nbsp;&nbsp;"; }
  118.          if($y == ($sizeof -1))
  119.          { echo "<img align=absmiddle src=verhor1.gif>"; }
  120.          else
  121.          { echo "<img align=absmiddle src=verhor.gif>"; }
  122.          echo "<img align=absmiddle src=\"";
  123.         echo $display[get_extension($sfiles[$y])];
  124.         echo "\"> ";
  125.          echo "<a href=\"http://$SERVER_NAME$prefix/$dir1$sfiles[$y]\">$sfiles[$y]</a>";
  126.          if($showsize) {
  127.             $fsize = @filesize($sfiles[$y])/1024;
  128.             printf(" (%.2f kB)", $fsize);
  129.          }
  130.          echo "</td></tr>";
  131.          echo "<tr><td>";
  132.       }
  133.       echo "<tr><td>";
  134.       for($z=1; $z<=$count; $z++)
  135.      { echo "<img align=absmiddle src=vertical.gif>&nbsp;&nbsp;&nbsp;"; }
  136.       echo "</td></tr>\n";
  137.    }
  138. }
  139. list_dir($root);
  140. echo "</table>\n";
  141. /* ¿Cuánto tiempo nos llevó? */
  142. $ftime = gettimeofday();
  143. $time = round(($ftime[sec] + $ftime[usec] / 1000000) - ($stime[sec] + $stime[usec] / 1000000), 5);
  144. echo "<center>Tiempo de generación de la página: $time segundos</center>\n";
  145. ?>
  146. </body></html>


Faltarían las imagenes, que no las tengo, pero puedes buscarlas por internet o crear las tuyas propias. Un saludo.
__________________
Seamos realistas. Busquemos lo imposible. ;)
La forma de dar las gracias en este foro, es dando Karma, aunque a veces con un simple Gracias, basta.
  #4 (permalink)  
Antiguo 27/05/2010, 05:11
 
Fecha de Ingreso: mayo-2010
Ubicación: Madrid
Mensajes: 74
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Explorador WEB

Flow89, te agradezco la ayuda.

He probado eso que me dices y si lo copio sin alterar nada obtengo una pagina en blanco con el siguiente texto:
Código Resultado:
Ver original
  1. Mapa del sitio web
  2. $sdirs[$y]";   Â  Â  Â  Â list_dir($dir."/".$sdirs[$y]);   Â  Â  }   Â }   Â chdir($chdir);   Â /* visitamos cada uno de los elementos del array de archivos   Â  * y los imprimimos */   Â if(is_array($sfiles)) {   Â  Â  sort($sfiles);   Â  Â  reset($sfiles);   Â  Â  $sizeof = sizeof($sfiles);   Â  Â  /* ¿qué tipos de ficheros deben ser visualizados? */   Â  Â  for($y=0; $y<$sizeof; $y++) {   Â  Â  Â  echo "";   Â  Â  Â  Â for($z=1; $z<=$count; $z++)   Â  Â  Â  { echo "   "; }   Â  Â  Â  Â if($y == ($sizeof -1))   Â  Â  Â  Â { echo ""; }   Â  Â  Â  Â else   Â  Â  Â  Â { echo ""; }   Â  Â  Â  Â echo " ";   Â  Â  Â  Â echo "$sfiles[$y]";   Â  Â  Â  Â if($showsize) {   Â  Â  Â  Â  Â  $fsize = @filesize($sfiles[$y])/1024;   Â  Â  Â  Â  Â  printf(" (%.2f kB)", $fsize);   Â  Â  Â  Â }   Â  Â  Â  Â echo "";   Â  Â  Â  Â echo "";   Â  Â  }   Â  Â  echo "";   Â  Â  for($z=1; $z<=$count; $z++)   Â  Â { echo "   "; }   Â  Â  echo "\n";   Â } } list_dir($root); echo "\n"; /* ¿Cuánto tiempo nos llevó? */ $ftime = gettimeofday(); $time = round(($ftime[sec] + $ftime[usec] / 1000000) - ($stime[sec] + $stime[usec] / 1000000), 5); echo "
  3.  
  4. Tiempo de generación de la página: $time segundos
  5. \n"; ?>

Si le pongo delante la línea:
Código XML:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
Me devuelve esto:
Código resultado:
Ver original
  1. No se puede mostrar la página XML
  2. No se puede ver la entrada XML con la hoja de estilo . Corrija el error y haga clic en el botón Actualizar, o inténtelo de nuevo más tarde.
  3.  
  4.  
  5. --------------------------------------------------------------------------------
  6.  
  7. No se admiten espacios en blanco en esta ubicación. Error al procesar el recurso http://localhost/gesaltus/Untitled-1.xml. ...
  8.  
  9. <?

¿Me sabes decir qué hago mal?
  #5 (permalink)  
Antiguo 27/05/2010, 06:12
Avatar de Flow89  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 346
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: Explorador WEB

Puede que no hagas nada mal, simplemente que no funcione con localhost, yo lo probé en mi servidor y funcionaba correctamente.

Prueba guardandolo con el nombre sitemap.xml y accede luego así

http://localhost/sitemap.xml

De todas maneras te paso el link de donde lo saqué para que lo leas y entiendas las cosas mejor.

http://www.programacion.com/articulo..._sitio_web_258



Tambien te comento, sabes lo que es indexar? Bueno, si tu subes archivos a un servidor, y este no encuentra ningun archivo que se llame index.html o index.php o principal.php o principal.html o así (estas dependen del servidor, pues son ellos quien deciden q paginas pueden ser principales) te muestra indexadamente el contenido de la raiz, archivos y carpetas, tipo FTP pues igual lo muestra.
__________________
Seamos realistas. Busquemos lo imposible. ;)
La forma de dar las gracias en este foro, es dando Karma, aunque a veces con un simple Gracias, basta.
  #6 (permalink)  
Antiguo 28/05/2010, 04:11
 
Fecha de Ingreso: mayo-2010
Ubicación: Madrid
Mensajes: 74
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Explorador WEB

Bueno, pues probaré con eso que me has mandado, por ahora no os doy más guerra, un saludo.

Etiquetas: explorador
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 11:05.