Lister dans un tableau à 2 colonnes des dossiers et leurs contenus

jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008 - 30 sept. 2008 à 10:58
jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008 - 1 oct. 2008 à 11:58
Bonjour,

Avec mon php j'arrive à  aficher le nom de mes dossiers et leurs contenus qui sont sur le serveur, voici mon code :

 <?php
function parcours_dossier($chemin_dossier)
{
// On ouvre le dossier à lire
$dossier = opendir($chemin_dossier);
// On parcours l'ensemble des éléments présent dans le dossier
while($element = readdir($dossier))
{
// On ne s'occupe ni du répertoire courant ni du répertoire parent
if(($element != ".") && ($element != ".."))
{
// Si le fichier est un dossier
if(file_exists($chemin_dossier."/".$element) && is_dir($chemin_dossier."/".$element))
{
echo "".$element."

";
// On parcours les sous dossiers (c'est ici qu'intervient la récursivité car la fonction s'appelle elle-même)
parcours_dossier($chemin_dossier."/".$element);
}
else
{
echo "".$element."

";
}
}
}
closedir($dossier);
}
// On appelle la fonction de parcours des dossiers
parcours_dossier("intranet/image_hd/");
?> 

Maintenant je voudrais que ces dossiers et leur contenus soient afficher dans un tableau à 2 colonnes, mais je n'y arrive pas !!!
Si quelqu'un pouvait m'aider S'IL VOUS PLAIT ?
Merci d'avance

8 réponses

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
30 sept. 2008 à 11:36
indente le code et je regarderais

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008
30 sept. 2008 à 11:48
Comprend pas !
Que veux tu ?
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
30 sept. 2008 à 14:05
Que tu appliques ceci => http://en.wikipedia.org/wiki/Indent_style
Dans le même genre en  français => http://www.gaboly.com/VBA/Indentation.html
et evidement ...
http://www.google.ch/search?q=indenter+le+code&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008
30 sept. 2008 à 14:15
C'est ça que tu veux ? :

<?php



  function parcours_dossier($chemin_dossier)
     



                {$dossier = opendir($chemin_dossier);// On ouvre le dossier à lire



                              while($element = readdir($dossier))// On parcours l'ensemble des éléments présent dans le dossier





                                        {if(($element != ".") && ($element != ".."))// On ne s'occupe ni du répertoire courant ni du répertoire parent





                                              {if(file_exists($chemin_dossier."/".$element) && is_dir($chemin_dossier."/".$element))// Si le fichier est un dossier



                                {echo "".$element."

";



                          parcours_dossier($chemin_dossier."/".$element);// On parcours les sous dossiers (c'est ici qu'intervient la récursivité car la fonction s'appelle elle-même)



                    }else



                {echo "".$element."

";
            }
          }
        }
      closedir($dossier);
    }



    parcours_dossier("test/");// On appelle la fonction de parcours des dossiers
?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
30 sept. 2008 à 15:01
Combien ya t'il de niveau d'arborescence ? que veux tu dans chaque colonne ?

Là ton code est un peu light pour faire ce genre de chose on evite de mélanger traitement et affichage.

Le plus simple (si il y a que 1 niveau d'arbo) c'est de faire qqch de ce genre...

<?php
function parcours_dossier($chemin_dossier) {
    $assFolder=array();
    $dossier = opendir($chemin_dossier); // On ouvre le dossier à lire
    while ($element = readdir($dossier)){
        if (($element != ".") && ($element != "..")){
            if (is_dir($chemin_dossier . "/" . $element)){
                $assFolder[$chemin_dossier . "/" . $element]=parcours_dossier($chemin_dossier . "/" . $element); // On parcours les sous dossiers (c'est ici qu'intervient la récursivité car la fonction s'appelle elle-même)
            }
            else{
                $assFolder[$chemin_dossier . "/" . $element]=$element;
            }
        }
    }
    closedir($dossier);
    return $assFolder;
}

$aResult=parcours_dossier("test/");

print_r($aResult);
?>

je suis pas sur du resultat mais ça doit pas être loin si ça fonctionne pas là.

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008
30 sept. 2008 à 15:12
___________________________________
|  Dossier n°1     | Dossier n°2    | Dossier n°3 |
|____contenu__|____contenu__|_contenu___|
|  Dossier n°4    | Dossier n°5     | Dossier n°6 |
|____contenu__|____contenu__|_contenu___|

etc...

voila, je voudrais quelquechose comme ça !!!
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
30 sept. 2008 à 18:04
Alors tu es obligé de faire un tableau un moins comme je t'ai montré plus haut ...
après suffit de parcourir ce tableau.
Pour ce qui est de ta fonction (récursive), tu dois la faire retourner le tableau du dossier qu'elle parcourt.

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008
1 oct. 2008 à 11:58
Pas moyen de faire un code correct !!


Est -ce que tu pourrais montrer commment tu utiliserais ce code stp ?
0
Rejoignez-nous