Liste dynamique

Résolu
Bonjour,

Pour une page en php, je souhaite uploadé un fichier dans un dossier sur un serveur.
Par l'intermédiaire d'une liste (donc d'un <select>) cela fonctionne.
Cependant cette méthode est statique, j'ai du rentrer à la main tous les dossiers contenus dans le dossier général,
et si je renommer un dossier il ne sera plus reconnu par la liste par la suite.

ce que je souhaite faire c'est donc un <select> qui détecte automatiquement les dossiers et leurs noms, présents dans le dossier général,
comme cela la personne qui se chargera de nettoyer les uploads, n'a pas besoin d'aller trifouiller dans le code de la page php (perte de temps énome, et risque de destruction)

Merci d'avance si vous voulez bien m'aidé
--
Avouer ses faiblesses est signe de force, l'humilité aussi ;)
Mais le tout dans la bonne humeur

2 réponses

  1. Voilà j'ai réussi : :
    liste dynamique avec les sous-dossiers !
    <select>
    <?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
    ?>
    <option>
    <?php
    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 "".$chemin_dossier."/".$element."<br />";
    // 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
    {
    }
    }
    }
    closedir($dossier);
    }
    // On appelle la fonction de parcours des dossiers
    parcours_dossier("upload");
    ?>
    </option>
    </select>
    


    1
    1. <select name="choix">

      <?php
      $dir = opendir("répertoire exemple ./upload/");
      while($folder = readdir($dir)) {
      ?>
      <option value=<?php echo $folder; ?>><?php echo $folder; ?></option>
      <?php
      }
      closedir($dir);
      ?>

      </select>
      0
      1. Ha bin merci beaucoup, je ne m'attendais pas à autant ^^ juste des indications

        mais c'est bien, ca ne prend pas en compte toutes les arborescences (dossiers dans dossiers) donc je vais travailler dessus (ouf enfin du travail lol) et je dis ce qu'il en ai

        0