[PHP] Liste dossier sous-dossier du repertoir

Résolu
Profil bloqué -  
 Profil bloqué -
Bonjour à tous,

Voila, j'ai beau cherchez, je parviens pas a trouver un système permettant de faire la liste des dossier et sous dossier ... et ainsi de suite mais pas des fichiers, le but c'est dans mettre le résultat dans un form de sélection pour indiquez ou je vais envoyer mon upload d'image.

J'ai bien essayer scandir mais il s'arrête ou premier niveau de sous dossier et comme les fonction récursive et moi, cela donne un chiffre inconnue...

Merci de votre aide.

2 réponses

  1. gaerebut Messages postés 1060 Statut Membre 171
     
    Bonjour,

    tu as bien compris qu'il s'agit de récursivité, en effet tu n'a pas le choix! lol
    Utilise une fonction récursive (= qui s'appel elle même) et une boucle while();
    De plus, essaye avec la fonction readdir (avec un @ devant au cas ou ça ne marche pas)

    A+
    gaerebut
    0
  2. Profil bloqué
     
    De retour, d'une longue expéditions sur la toile, je vous livre la solutions trouvé par CrokNoks sur le Site du Zéro.

    <form>
    <select>
    <?php
    function glob_free($dir,$patern='*'){
    	$tab='';
    	if (is_dir($dir)) {
    	    if ($dh = opendir($dir)) {
    	        while (($file = readdir($dh)) !== false) {
    				$ext=explode('.',$file);
    				$ext=$ext[count($ext)-1];
    	            if($ext==$patern || $patern=="*" && $file!='.' && $file!='..'){
    					$tab[]=$dir.$file;
    				}
    	        }
    	        closedir($dh);
    	    }
    	}
    	return $tab;
    }   
    function get_tree($path = './'){
    	if (substr($path,-1) !== '/')
    		$path .= '/';
    	$tree = '';
    	$dirs = glob_free($path,'*');
    	if(is_array($dirs))
    	foreach ($dirs as $value){
    		if(is_dir($value)){
    			$tree .= '<option value="'.$value.'/">'.$value.'</option>';
    			$tree.=get_tree($value.'/');
    		}
    	}
    	return $tree;
    }
        echo get_tree('images/');
    ?>
    </select>
    </form>


    Voila l'adresse:
    https://openclassrooms.com/forum/sujet/php-cree-une-liste-des-dossier-dans-une-liste-deroulante-36822

    Cela permet de faire une liste automatique de tout les dossier présent dans le répertoire cible, et de l'inscrire dans un formulaire de sélection.
    0