Création d'une liste déroulante pour la galerie

Eléphant du PHP | 445 Messages

01 nov. 2007, 16:08

Tu testes si le fichier est bien un repertoire.
while(false !== ($fichier = readdir($rep)))
{
   if ($fichier != "." && $fichier != ".." && is_dir($url.$fichier)) 
   {
   $dname[] = $fichier;
   sort($dname);
   reset ($dname);
   }         
}
Modifié en dernier par h0_noMan le 01 nov. 2007, 16:22, modifié 1 fois.

Eléphant du PHP | 183 Messages

01 nov. 2007, 16:20

Salut,

Merci de ta réponse,

J'ai mi ce code mais je n'est plus rien dans ma liste dérouante,

je recapitule le code :

Code : Tout sélectionner

function galerie ($a) { $r = (isset($_GET['r']))?$_GET['r']:""; $c = (isset($_GET['c']))?$_GET['c']:""; $car_forbid = array('.','/'); $r = str_replace($car_forbid, "", $r); $c = str_replace($car_forbid, "", $c); $url = "/homepages/21/xxxxxxx/htdocs/lesite/galerie/".$r."/" ; $rep=opendir($url); $d=$c; $a=$url .'/' . $c; $dimg=opendir($a); while(false !== ($fichier = readdir($rep))) { if ($fichier != "." && $fichier != ".." && is_dir($fichier)) { $dname[] = $fichier; sort($dname); reset ($dname); } }

et la liste déroulante :

Code : Tout sélectionner

<select onChange="location = this.options[this.selectedIndex].value;"> <option>----------</option> <? $u=0; foreach($dname as $key=>$val) { if($dname[$u]){ print " \t\t\t<option value=\"?o=galerietest&r=" . $r . "&c=" . $dname[$u] . "\">" . $dname[$u] . "</option>\n"; $u++; } } ?> </select>
_________
Fabien

Eléphant du PHP | 445 Messages

01 nov. 2007, 16:24

J'ai corrigé mon code.

Il faut le chemin complet dans is_dir().

Eléphant du PHP | 183 Messages

01 nov. 2007, 16:51

Yes ca marche Merci h0_noMan !!

Sinon une dernière chose

est'il possible pour la navigation d'améliorer l'affichage de la liste déroulante.

C'est a dire quand je suis dans le dossier :

galerie/dossier (sans dossier)
Si il n'y a pas de sous dossier alors ne pas afficher la liste déroulante

galerie/dossier (avec sous dossiers)
Si ya des sous dossiers afficher la liste déroulantes avec les sous dossier dedans et pas les fichiers éventuels qui sont a la racine du dossier.

Sinon a par cela sa a l'air de fonctionner :) je ne sais pas si tu voit des amélioration ?
_________
Fabien