Page 1 sur 1

Affichage avec Select

Posté : 22 nov. 2010, 12:59
par coucou
Bonjour Tout le monde,

J'arrive à me lister des noms de fichier qui sont dans un répertoire, mais j'aimerais qu'ils soit afficher dans un menu ou je pourrais faire un choix sur l'un d'eux.
<?php
$dir = "./images/flags/";


	// Ouvre un dossier bien connu, et liste tous les dossiers 
	 
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            echo " " . $file . "\n";
        }


    }
}
?> 
<br>
       <select name="'$files'">';
       <option value='$file'>$file</option>";
       </select>
Mais j'arrete pas de tourner en rond et je bloque sur l'affichage que je souhaite

Merci d'avance pour votre aide.
Coucou

Re: Affichage avec Select

Posté : 22 nov. 2010, 15:10
par devlop78

Code : Tout sélectionner

<select name="'$files'">'; <?php $dir = "./images/flags/"; // Ouvre un dossier bien connu, et liste tous les dossiers if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { echo "<option value='$file'>$file</option>"; } } } ?> </select>
Non ?

Re: Affichage avec Select

Posté : 22 nov. 2010, 15:53
par coucou
oh yes merci

J'avais des points à l'affichage de ma liste, j'ai corrigé un peu pour les enlever de la liste.
Ca donne ceci :
       <select name="'$files'">';
<?php
$dir = "./images/flags/";


        // Ouvre un dossier bien connu, et liste tous les dossiers
         
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
          if ($file != "." && $file != "..") {
             echo "<option value='$file'>$file</option>";
        }
        }
    }
}
?>
</select>
Maintenant il me reste à trouver pour les afficher par classement alphabetique :wink:

Encore merci devlop78

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:04
par stealth35
utilise glob ca sera plus simple

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:08
par coucou
La fonction
readdir() est censé afficher les noms dans l'ordre dans lequel ils sont enregistrés dans le système de fichiers.
??

Ca veut dire quoi ?
Qu'il va m'afficher les noms avec la date et l'heure à laquelle ils ont été mis dans mon dossier du ftp ??
En tout cas, si c'est ça, il me les affiches pas comme ça parce que ça reviendrait à ce qu'ils les affiches par ordre alphabétique.

C'est la seule fonction que j'ai pu voir pour mettre un ordre dans un affichage

Pour la fonction
glob()
j'ai vu que c'était que pour le mode local ??

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:10
par stealth35
La fonction
readdir() est censé afficher les noms dans l'ordre dans lequel ils sont enregistrés dans le système de fichiers.
??

Ca veut dire quoi ?
Qu'il va m'afficher les noms avec la date et l'heure à laquelle ils ont été mis dans mon dossier du ftp ??
oui par ordre de d'arriver dans le dossier
Pour la fonction
glob()
j'ai vu que c'était que pour le mode local ??
tu lis tes fichier en local donc c'est bon

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:17
par coucou
Re: Affichage avec Select

Message de stealth35 le 22 Nov 2010, 16:10

coucou a écrit:La fonction

readdir() est censé afficher les noms dans l'ordre dans lequel ils sont enregistrés dans le système de fichiers.

??

Ca veut dire quoi ?
Qu'il va m'afficher les noms avec la date et l'heure à laquelle ils ont été mis dans mon dossier du ftp ??



oui par ordre de d'arriver dans le dossier
Justement l'ordre d'arriver dans le dossier "images/flag" de mon ftp est l'ordre alphabétique et ça ne s'affiche pas comme ça
Voici un lien http://www.wgk-team.fr/index.php?option ... &Itemid=45

Pour
coucou a écrit:Pour la fonction

glob()

j'ai vu que c'était que pour le mode local ??


tu lis tes fichier en local donc c'est bon
Je ne suis pas en local, mais sur un serveur ftp

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:21
par stealth35
mais si t'es en local, tu va chercher les fichiers qui sont sur le meme serveur c'est ca du local

Re: Affichage avec Select

Posté : 22 nov. 2010, 16:23
par coucou
:oops: ^^

Je vais regarder ça alors :?

Re: Affichage avec Select

Posté : 22 nov. 2010, 17:21
par coucou
Je le fais des 2 façons et j'obtiens la même chose avec la fonction glob()
//EXEMPLE 1

       <select name="'$files'">';
<?php
$dir = "./images/flags/";


        // Ouvre un dossier bien connu, et liste tous les dossiers
         
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
          if ($file != "." && $file != "..") {
             echo "<option value='$file'>$file</option>";
        }
        }
    }
}
?>
</select>
<br>
<br>
<br>

//EXEMPLE 2 AVEC glob ()

       <select name="'$files'">';
<?php
$dir = "./images/flags/";


        // Ouvre un dossier bien connu, et liste tous les dossiers
         
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
          if ($file != "." && $file != "..") {
 $files = glob("./images/flags/*.gif");
 {
             echo "<option value='$file'>$file</option>";
        }
        }
    }
}
}
?>
</select>

voir ICI
Et j'arrive pas à avoir mon affichage par ordre alphabétique :cry:

Re: Affichage avec Select

Posté : 22 nov. 2010, 17:26
par stealth35
avec glob ta pas besion de readdir et opendir

juste ca suffis :
$files = glob('./images/flags/*.gif');
natsort($files);

foreach($files as $file)
{
    echo "<option value=\"$file\">$file</option>";
}

Re: Affichage avec Select

Posté : 26 nov. 2010, 12:21
par coucou
Coucou,

Merci j'avais bien noté ce code, mais j'ai un souci que je n'arrive pas à résoudre depuis
J'ai mes fichiers qui s'affichent par ordre alphabétique, mais j'ai également le nom du dossier ou il est, et je n'arrive pas à enlever les dossiers.

J'en suis à se code
       <select name="'$files'">';
<?php

$dir = "./images/flags/";
$files = glob($dir . '*.gif');

foreach($files as $file)
{
    echo "<option value=\"$file\">$file</option>";
}

?>
</select>

Merci