Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/04/2007, 03:12
Avatar de estibaliz2006
estibaliz2006
 
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 6 meses
Puntos: 1
curiosísimo el error en subir nivel

hola. bueno, seguimos con los problemas con subir nivel en subdirectorios. resulta que yo creía que ya había encontrado la solución (y de hecho la he encontrado) para que aparezca el enlace 'subir nivel' a partir del directorio raiz. pero tengo lo siguiente:

bueno, el tema era que un usuario, al registrarse en un sistema, se creaba automáticamente un directorio con su nombre, por ejemplo, 'juanluis' dentro de la carpeta 'módulos' que es el directorio raiz de la web (donde están todos los archivos). si este usuario quería crear a su vez un subdirectorio en ese directorio suyo 'juanluis', lo creaba: por ejemplo 'hola'. de tal modo que la cuestión estaba en que apareciera el enlace 'subir nivel' para volver al directorio anterior, siempre que el usuario no estuviera en SU directorio principal. es decir, si el usuario juanluis estaba en su directorio principal 'juanluis', no debería aparecer 'subir nivel' porque sino lo llevaba al directorio principal de la web 'modulos' donde estaban todos los archivos. pero si el usuario estaba en el subdirectorio 'hola' creado por él mismo, aparecería 'subir nivel' para volver al directorio 'juanluis'.
bien, esto lo conseguí al final contando los caracteres y comparandolos de las rutas de los directorios:

Código PHP:
if (strlen($path) > strlen('modulos/')+strlen($nombre) )
        {
        
$curDir substr($path, (strrpos(dirname($path."/."),"/")+0));

        print 
"<br>Directorio Actual: <b>".$curDir."</b>&nbsp;&nbsp"

         

        
$up substr($path0, (strrpos(dirname($path."/."),"/")));

        print 
"|&nbsp;&nbsp;<a href='index.php?mod=10&path=$up' class=textenlace3>Subir Nivel</a><br><hr color=#EAEAEA>"; }
        else
        {
         
$curDir substr($path, (strrpos(dirname($path."/."),"/")+0));

        print 
"<br>Directorio Actual: <b>".$curDir."</b>&nbsp;&nbsp";} 
pero cuál es el problema ahora? el problema está en que si creo un nuevo subdirectorio dentro del subdirectorio 'Hola', llamado 'Adios', en 'Adios' aparece el 'Subir Nivel' para volver al directorio anterior, es decir, a 'Hola' y en 'Hola' aparece el 'Subir Nivel' para volver al directorio 'juanluis'. pero mientras en 'Adios' funciona correctamente (pincho en él y me vuelvo a 'Hola'), al pinchar en 'subir nivel' en 'Hola' no me lleva al directorio padre 'juanluis', sino que sigue en 'Hola'

qué es lo que sucede?