Lister un répertoire de dossiers
rivka95
Messages postés
80
Date d'inscription
Statut
Membre
Dernière intervention
-
rivka95 Messages postés 80 Date d'inscription Statut Membre Dernière intervention -
rivka95 Messages postés 80 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je sais que la fonction readdir() permet de lister le contenu d'un dossier à télécharger.
Maintenant je souhaite pouvoir ouvrir un dossier contenant des fichiers et des dossiers qui contiennent eux mêmes des fichiers.
Quelqu'un saurait-il m'aider ???
Merciii !
Lynda
Je sais que la fonction readdir() permet de lister le contenu d'un dossier à télécharger.
Maintenant je souhaite pouvoir ouvrir un dossier contenant des fichiers et des dossiers qui contiennent eux mêmes des fichiers.
Quelqu'un saurait-il m'aider ???
Merciii !
Lynda
A voir également:
- Lister un répertoire de dossiers
- Mettre un mot de passe sur un dossier - Guide
- Impossible de supprimer un dossier - Guide
- Répertoire téléphonique gratuit - Télécharger - Bureautique
- Lister les disques cmd - Guide
- Liste déroulante de choix excel - Guide
5 réponses
Merci pour ta réponse, je découvre la fonction et je cherche en fonction de ce que tu me conseilles mais ne suis pas certaine de bien comprendre. Si tu peux me donner plus de détails...
Ci-après mon code pour plus de clarté :
$dir_nom = 'nom_du_dossier';
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas');
$fichier= array();
$dossier= array();
while($element = readdir($dir)) {
if($element != '.' && $element != '..') {
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
else {$dossier[] = $element;}
}
}
closedir($dir);
if(!empty($fichier)){
sort($fichier);
echo '<div class="style_css">Liste des fichiers '.$dir_nom.' :</div>';
echo "\t\t<ul>\n";
foreach($fichier as $lien) {
echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
}
echo "\t\t</ul>";
}
merci à toi !
Ci-après mon code pour plus de clarté :
$dir_nom = 'nom_du_dossier';
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas');
$fichier= array();
$dossier= array();
while($element = readdir($dir)) {
if($element != '.' && $element != '..') {
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
else {$dossier[] = $element;}
}
}
closedir($dir);
if(!empty($fichier)){
sort($fichier);
echo '<div class="style_css">Liste des fichiers '.$dir_nom.' :</div>';
echo "\t\t<ul>\n";
foreach($fichier as $lien) {
echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
}
echo "\t\t</ul>";
}
merci à toi !
coucou
mais je te conseille d'utiliser cette petite fonction si tu veux la listes des fichiers et sous dossier :
donc pour l'exemple :
si tu veux un exemple :)
http://www.nacatiks.com/ccm/p2/
Admire la personne qui te critique , car prisonniere de ca propre jalousie elle ne fais que t admirer
# le dossier que tu veux repertorier $dir_nom = '../../ccm/'; $dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); # test d'existance $fichier= array(); # tableau des fichiers $dossier= array(); # tableau des dossiers //tant qu'il y a un fichier a lire while($element = readdir($dir)) { # $element c'est le nom du fichier mais il y a aussi le . et .. # donc si c'est differents de . et .. if($element != '.' && $element != '..') { # is_dir permet de savoir si c'est chemin relatif donc en gros # is_dir('a_file.txt') retourne faux # is_dir('..') retourne vrai if (!is_dir($dir_nom.'/'.$element)) { # on sais que c'est un fichier $fichier[] = $element; } else { # on sais que c'est un dossier $dossier[] = $element; } } } # on ferme le dossier d'ouverture closedir($dir); # si le fichiers ne sont pas vides if(!empty($fichier)) { # sort permet de trier les fichiers du plus petit au plus grand sort($fichier); echo '<div class="style_css">Liste des fichiers '.$dir_nom.' :</div>'; echo "\t\t<ul>\n"; foreach($fichier as $lien) { echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n"; } echo "\t\t</ul>"; }
mais je te conseille d'utiliser cette petite fonction si tu veux la listes des fichiers et sous dossier :
function ScanDirectory($Directory){ $MyDirectory = opendir($Directory) or die('Erreur'); while($Entry = @readdir($MyDirectory)) { if(is_dir($Directory.'/'.$Entry)&& $Entry != '.' && $Entry != '..') { echo '<ul>'.$Directory; ScanDirectory($Directory.'/'.$Entry); echo '</ul>'; } else { if($Entry!='.' && $Entry!='..') { echo '<li>'.$Entry.'</li>'; } } } closedir($MyDirectory); }
donc pour l'exemple :
ScanDirectory('adresse du dossier racine');
si tu veux un exemple :)
http://www.nacatiks.com/ccm/p2/
Admire la personne qui te critique , car prisonniere de ca propre jalousie elle ne fais que t admirer
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Une question mandolorien, cette fonction permet-elle l'accès aux dossiers et fichiers ou bien affiche t-elle seulement la liste ?
Moi je souhaite pouvoir accéder aux fichiers et dossiers.
Merci
Moi je souhaite pouvoir accéder aux fichiers et dossiers.
Merci