por el momento a mi explorador le faltan muchas cosas, me gustaria que pudiese bajar y subir de nivel entre los directorios, ademas que pueda leer todos los archivos por lo menos que sea como el explorador que viene por defecto con xamp.
la necesidad de esto es poder moverse entre el sistema desde dispositivos mobiles porque con el explorador clasico de todos los servidores no esta optimizado para este proposito
<?php
$estructura = scandir("../beta");
// print_r($estructura);
for($x = 0; $x<sizeof($estructura); $x++){
echo "<li onmouseover=\"escanear('$estructura[$x]')\">$estructura[$x]</li></br>";
}
?>
<hr>
<div id="container"></div>
<script type="text/javascript">
container = document.querySelector('#container')
ajax = new XMLHttpRequest()
function escanear(elemento){
console.log(elemento)
ajax.open("get", "listdir.php?consulta="+elemento, true);
ajax.send();
ajax.onreadystatechange=function() {
if (ajax.readyState==4 && ajax.status==200) {
texto=ajax.responseText;
container.innerHTML= texto;
}
}
}
</script>
</body>
</html>
con mi bucle obtengo mi codigo renderizado
<li onclick="escanear('.')">.</li><br>
<li onclick="escanear('..')">..</li><br>
<li onclick="escanear('estudio')">estudio</li><br>
<li onclick="escanear('listdir.php')">listdir.php</li><br>
<li onclick="escanear('pendientes')">pendientes</li><br>
<li onclick="escanear('prepros.cfg')">prepros.cfg</li><br>
<li onclick="escanear('prova.php')">prova.php</li><br>
<li onclick="escanear('random')">random</li><br>
<li onclick="escanear('templates')">templates</li><br>
<li onclick="escanear('test')">test</li><br>
luego esta mi codigo que se encarga de hacer el escaneo, el parametro consulta hace refencia al nombre de mi carpeta, lo malo que no puedo escanear una subcarpeta, si por ejemplo escaneo la carpeta random con mi siguiente codigo
<?php
$peticion = $_GET['consulta'];
if(is_dir($peticion)){
$contenido = scandir($peticion);
for($i = 0; $i<sizeof($contenido); $i++){
echo "<li onmouseover=\"escanear('$contenido[$i]')\">$contenido[$i]</li></br>";
}
}
?>
puedo obtener lo siguiente
<li onclick="escanear('.')">.</li><br>
<li onclick="escanear('..')">..</li><br>
<li onclick="escanear('estudio')">estudio</li><br>
<li onclick="escanear('listdir.php')">listdir.php</li><br>
<li onclick="escanear('pendientes')">pendientes</li><br>
<li onclick="escanear('prepros.cfg')">prepros.cfg</li><br>
<li onclick="escanear('prova.php')">prova.php</li><br>
<li onclick="escanear('random')">random</li><br>
<li onclick="escanear('templates')">templates</li><br>
<li onclick="escanear('test')">test</li><br>
<div id="resultado"><li onclick="escanear('.')">.</li><br>
<li onclick="escanear('..')">..</li><br>
<li onclick="escanear('.git')">.git</li><br>
<li onclick="escanear('clothes')">clothes</li><br>
<li onclick="escanear('conbinado.html')">conbinado.html</li><br>
<li onclick="escanear('orden.html')">orden.html</li><br>
<li onclick="escanear('orden_inverso.html')">orden_inverso.html</li><br>
</div>
si intento escanear mi subcarpeta clothes, me redirige a mi carpeta anterior y se borra todo el contenido de mi div resultado