Foros del Web » Programando para Internet » PHP »

conector PHP para Jquery...

Estas en el tema de conector PHP para Jquery... en el foro de PHP en Foros del Web. Saludos... Hay una fuente llamada JqueryFileTree que permite visionar la estructura de un directorio tal y como se puede ver a través del explorador de ...
  #1 (permalink)  
Antiguo 14/02/2011, 05:41
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 20 años, 8 meses
Puntos: 5
conector PHP para Jquery...

Saludos...

Hay una fuente llamada JqueryFileTree que permite visionar la estructura de un directorio tal y como se puede ver a través del explorador de windows o el nautilius en linux... Esto es interesante para compartir algunos archivos de forma gráfica.

Sin ambargo, existe un conector en formato PHP que permite ver esa estructura de árbol, además de todos los ficheros .js que se deben guardar en el servidor. Pero es justo ese fichero PHP que permite hacerlo todo.

Fichero:
Código PHP:
<?php
$_POST
['dir'] = urldecode($_POST['dir']);

if( 
file_exists($root $_POST['dir']) ) {
        
$files scandir($root $_POST['dir']);
        
natcasesort($files);
        if( 
count($files) > ) { /* The 2 accounts for . and .. */
                
echo "<ul class=\"jqueryFileTree\" style=\"display: none;\">";
                
// All dirs
                
foreach( $files as $file ) {
                        if( 
file_exists($root $_POST['dir'] . $file) && $file != '.' && $file != '..' && is_dir($root $_POST['dir'] . $file) ) {
                                echo 
"<li class=\"directory collapsed\"><a href=\"#\" rel=\"" htmlentities($_POST['dir'] . $file) . "/\">" htmlentities($file) . "</a></li>";
                        }
                }
                
// All files
                
foreach( $files as $file ) {
                        if( 
file_exists($root $_POST['dir'] . $file) && $file != '.' && $file != '..' && !is_dir($root $_POST['dir'] . $file) ) {
                                
$ext preg_replace('/^.*\./'''$file);
                                echo 
"<li class=\"file ext_$ext\"><a href=\"#\" rel=\"" htmlentities($_POST['dir'] . $file) . "\">" htmlentities($file) . "</a></li>";
                        }
                }
                echo 
"</ul>";
        }
}

?>
Estas líneas de código supuestamente permiten incluso que el usuario pueda clicar sobre algún archivo y bajarlo a su disco local. Esa función yo la he activado a través del JS de mi código con un "window.open".

Mi problema es que la manera en la que está dado el código, el root de los ficheros los asume del tipo:
lo que sería más o menos (/var/www/html/ficheros) en un linux

La pregunta es... si mis ficheros se encuentran en un directorio diferente como por ejemplo (/mnt/compartidos/ficheros), cómo puedo modificar el .PHP para que vaya a ese path indicado y no al del 'var/www/...' ?

Gracias
__________________
Andrew :P
  #2 (permalink)  
Antiguo 14/02/2011, 08:09
Avatar de historiasdemaria  
Fecha de Ingreso: septiembre-2010
Ubicación: www
Mensajes: 433
Antigüedad: 13 años, 7 meses
Puntos: 54
Respuesta: conector PHP para Jquery...

A primer vistazo parece ser la variable
Código PHP:
Ver original
  1. $root
en tu codigo la que marca el path, no?
  #3 (permalink)  
Antiguo 14/02/2011, 08:39
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 20 años, 8 meses
Puntos: 5
Respuesta: conector PHP para Jquery...

Pues me parece que ese $root es el que lee en el javascript, pues la idea del JS es que el usuario solo haga un menor cambio en el código más manejable (el .js) y en el valor 'root' incluya el path donde se encuentra el directorio.

Para más información os muestro el JS:

Código HTML:
<script type="text/javascript">
$(document).ready( function() {
    $('#container').fileTree({
        root: '/mnt/compartidos/ficheros',
        script: 'var/www/html/jqueryFileTree/connectors/jqueryFileTree.php'
        },
        function(file) {
        	window.open(file);
    });
});
</script> 
Como veis, el 'root' se marca en el JS y no en el PHP. LA lectura la hace bien, pero cuando clico sobre cualquier archivo, me antepone el nivel del dominio y la estructura se encuentra en un directorio diferente como lo expliqué en mi primer post.

El 'script' es el archivo PHP que he listado inicialmente tambien que es el conector para acceder a la estructura. Por eso pienso que se puede manipular desde el PHP y no desde el JS.

Qué piensas?
__________________
Andrew :P

Etiquetas: conector, jquery
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:52.