Se connecter avec
S'enregistrer | Connectez-vous

Petite question sur is_dir()

Dernière réponse : dans Programmation

Petite question sur is_dir().

Voila j'utilise ce script :

  1. function select_theme($mod)
  2. {
  3. $handle = @opendir("modules/Chat/themes/");
  4. while (false !== ($f = readdir($handle)))
  5. {
  6. if ($mod == $f)
  7. {
  8. $checked = "selected=\"selected\"";
  9. }
  10. else
  11. {
  12. $checked = "";
  13. }
  14.  
  15. if (is_dir("modules/Chat/themes/" . $f . "/"))
  16. {
  17. echo "<option value=\"" . $f . "\" " . $checked . ">" . $f . "</option>\n";
  18. }
  19.  
  20. }
  21. closedir($handle);
  22. }


Puis:

  1. <select name=\"theme_chat\">";
  2.  
  3. select_theme($theme_chat);
  4.  
  5. </select>


Il sera dans la suite du script affiché les répertoires qui sont dans thème.

Il fonctionne impect, sauf que dans la list il y a affiché: "." et "..".

Pourquoi donc ?

J'ai trouver comment les faire disparaitre :

  1. function select_theme($mod)
  2. {
  3. $handle = @opendir("modules/Chat/themes/");
  4. while (false !== ($f = readdir($handle)))
  5. {
  6. if ($f != ".." && $f != "." && $f != "index.html")
  7. {
  8. if ($mod == $f)
  9. {
  10. $checked = "selected=\"selected\"";
  11. }
  12. else
  13. {
  14. $checked = "";
  15. }
  16.  
  17. if (is_dir("modules/Chat/themes/" . $f . "/"))
  18. {
  19. echo "<option value=\"" . $f . "\" " . $checked . ">" . $f . "</option>\n";
  20. }
  21. }
  22. }
  23. closedir($handle);
  24. }


Mais j'aimerai savoir d'ou il sorte !

Merci de vos réponses ;) 

Autres pages sur : petite question dir

Lassé par la pub ? Créez un compte
Expert Programmation

Petit indice :

  1. simon@rincon:~/thunderbird$ ls -a
  2. . ..


NB : thunderbird est un répertoire vide dans mon home

Lorsqu'on fait un ls -a sous Unix il donne . le répertoire courant et .. le répertoire d'avant dans l'arborescence. PHP doit avoir le même comportement pour cette méthode.
Lassé par la pub ? Créez un compte
Tom's guide dans le monde