David, gracias por tu ayuda.. efectivamente la concatenacion estaba mal, y tmb debia concantenar en filesize y time, pero sigo con problemas.. este es el codigo que estoy usando ahora:
Código PHP:
$usuario = $SESSION["usuario"];
function ls(){
//directorio a listar
$directorio= dir('./' . $usuario);
$pn= array();//pila de nombres
$pf= array();//pila de fechas
$pt= array();//pila de tamaNos
//bucle para llenar las pilas :P
while (($archivo = $directorio->read())!== false){
//no mostrar ni "." ni ".." ni el propio "index.php"
if(($archivo!="index.php")&&($archivo!=".")&&($archivo!="..")){
array_push($pn, $archivo);
array_push($pf, date("d F Y H:i", filemtime('./' . $usuario . '/' . $archivo)));
array_push($pt, filesize('./' . $usuario .'/' . $archivo));
}
}
$directorio->close();
//ordenar las 3 pilas segun la pila de nombres
array_multisort($pn,$pf,$pt);
//mostrar los datos
for($i=0; $i<count($pn); $i++){
echo '<div class="archivo"><a href="'.$pn[$i].'">'.$pn[$i].'</a></div><div class="fecha">'.$pf[$i];
printf('</div><div class="peso">%1.3fKb</div>',$pt[$i]/1000);
}
}}
?>
Y lo curioso es que no me reconce la parte de la variable $usuario, o sea, me lista el directorio actual, pues me toma este valor "//".. no se si me explico. es como si $usuario fuese nula.
Lo mas curioso aun, es que, en el mismo sitio, tengo un echo que imprime la variable $usuario, y me lo muestra perfectamente. Es decir, tengo esto:
Código:
Bienvenido <? echo $usuario; ?>
y me imprime, por decir, esto:
"Bienvenido Pablo"...
se entiende?? alguien sabe cual puede ser el error??
desde ya muchas gracias, un saludo!!
pablo