Obtenir une liste de tous les dossiers dans le répertoire

J'ai donc un système de fichiers qui ressemble à ceci:

Music - 001 -- song.mp3 - 002 -- song.mp3 - 003 - 004 - 005 -- song.mp3 musicplayer.html musicplayer.js 

J'étais curieux s'il était possible d'obtenir une liste de tous les noms de dossiers?

Ce javascript, html5, ou même jQuery, je ne peux rien installer.

Il a un point dans sa question (HTML5)


J'étais curieux s'il était possible d'obtenir une liste de tous les noms de dossiers? Ce javascript, ou même jQuery, je ne peux pas installer quoi que ce soit

Simplement non, mais pas la dernière réponse!

JavaScript (JS) est un langage de programmation informatique interprété. Il a été initialement mis en œuvre dans le cadre de navigateurs Web afin que les scripts côté client puissent interagir avec l'utilisateur, contrôler le navigateur, communiquer de manière asynchrone et modifier le contenu du document qui a été affiché.

Il existe 3 principaux types de JavaScript, à savoir:

 Client-Side JavaScript (CSJS) -- an extended version of JavaScript that enables the enhancement and manipulation of web pages and client browsers Server-Side JavaScript (SSJS) -- an extended version of JavaScript that enables back-end access to databases, file systems, and servers Core JavaScript -- the base JavaScript language 

Le JavaScript côté client (CSJS) et le JavaScript côté serveur (SSJS) dépendent du JavaScript principal et ne peuvent pas fonctionner sans celui-ci.

JavaScript et le DOM offrent aux auteurs malveillants la possibilité de fournir des scripts à exécuter sur un ordinateur client via le Web. Les auteurs du navigateur contiennent ce risque en utilisant deux restrictions. Tout d'abord, les scripts sont exécutés dans un bac à sable dans lequel ils ne peuvent effectuer que des actions liées au Web, et non des tâches de programmation à usage général, comme la création de fichiers . Deuxièmement, les scripts sont contraints par la même politique d'origine: les scripts d'un site Web n'ont pas accès à des informations telles que les noms d'utilisateur, les mots de passe ou les cookies envoyés à un autre site. La plupart des bogues de sécurité liés à JavaScript sont une violation de la même politique d'origine ou du sandbox.

Il existe des sous-ensembles de JavaScript généraux – ADsafe, Secure ECMA Script (SES) – qui fournissent un plus grand niveau de sécurité, en particulier sur le code créé par des tiers (tels que des publicités).

J'étais curieux s'il était possible d'obtenir une liste de tous les noms de dossiers? Avec HTML5

HTML5 fournit FileSystem API qui peut résoudre votre soif, du moins pour savoir 🙂
Lisez le didacticiel ici: http://www.html5rocks.com/en/tutorials/file/filesystem/

Une autre solution est d'utiliser le navigateur ultime Api, que je ne recommande jamais
La meilleure solution consiste à utiliser une langue côté serveur comme php

Essayez-vous d'obtenir le système de fichiers du client? Dans l'affirmative, les navigateurs Internet interdisent généralement ce type de comportement pour des raisons de sécurité.

Si vous essayez d'énumérer des éléments sur votre serveur Web, cela ne peut se faire sans AJAX puisque JavaScript s'exécute sur la machine du client. Vous devriez avoir un code de serveur pour répertorier le répertoire pour vous, mais cela peut poser un risque de sécurité potentiel.

Je pense que votre meilleur pari est d'exécuter le code côté serveur pour répertorier le répertoire, ce n'est pas le plus sûr de le faire sur le code côté client.

Si vous demandez Javascript sur le client, Oui, nous pouvons accéder à Mozilla Firefox à l'aide de File API, je ne connais pas d'autres navigateurs.

https://developer.mozilla.org/en-US/docs/Code_snippets/File_I_O

Vous pourriez certainement accomplir cela, comme l'a déclaré @Tariq, avec un code de serveur, comme php. Vous pouvez soumettre des chemins d'annuaire par rapport à la racine via ajax (consultez jquery $ .post () @ http://api.jquery.com/jQuery.post/ ).

 <?php if (isset($_POST['submit'])) { //capture post varibles, sanitizing of course. $dir = ""; $dir = $_POST['input']; $dh = opendir($dir); while (false !== ($filename = readdir($dh))) { $files[] = $filename; } //now, do stuf with files sort($files); print_r($files); } ?> 

Voici la sortie:

 Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => somedir ) 

J'espère que cela t'aides.