Un menu déroulant qui liste les fichiers du répertoire coura

Eléphant du PHP | 355 Messages

22 janv. 2006, 02:17

Ok merci encore :wink:

Donc j'en suis la:
<form NAME="menu1"style="margin: 0;">  
<select NAME="popup" onChange="change_site();" style="background-color:#313131; color:#8000FF" size="1"> 
<option>Mes outils php</option>
<?php 
// Ici on masque les extenssions des fichiers:
function filename1( $filename1 ) { 
    if (($res = strrpos($filename1, '.')) !== FALSE) { 
        return substr($filename1, 0, $res); 
    } else { 
        return $filename1; 
    }  
}
$directories = glob("articles/*.*");  // On cible le répertoire des fichiers à lister
foreach ($directories as $dir) { 
if ($dir != 'Objets' && $dir !='img') {  // On maques les fichiers
echo '<option value='.$dir.'>'.basename(filename1($dir)).'</option>'; 
} 
}   
?> 
</select></form><br>
basename fonctionne parfaitement mais les liens ne fonctionnenet plus.

Eléphant du PHP | 355 Messages

22 janv. 2006, 02:21

Maitenant sa marche, merci encore :wink:

Eléphant du PHP | 355 Messages

22 janv. 2006, 02:23

Peut on définir la taille du formulaire ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 janv. 2006, 02:25

question... est ce que les fichiers récupérés par la boucle ont une extension connue ? et toujours la même ?

Si oui il existe un paramètre optionel de la fonction basename qui permet de supprimer l'extension du fichier.

Explique un peu plus ce petit détail "les liens ne fonctionnenet plus"...comme ça je ne vois pas.

La liste est-elle bien remplie ?
que donne le code source (HTML) ? !!

EDIT:
Peut on définir la taille du formulaire ?
C'est à dire ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 355 Messages

22 janv. 2006, 02:35

Oui les sextension sont reconu .php.

Non les liens fonctionnent maitenant.

Quand je perle de la taille du forulaire je veut dire la longuereur de ceci:
Image

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 janv. 2006, 02:55

Oui les sextension sont reconu .php.
donc tu peux essayer de faire ceci pour supprimer les extensions:
echo '<option value='.$dir.'>'.basename($dir,".php").'</option>'; 
Donc ceci n'est pas un formulaire mais un champ select ou encore liste, il faut utiliser les mots appropriés sinon on ne peut pas comprendre :?

On peut limiter la taille mais celle ci sera toujours égale au contenu le plus long. Tu peux donc limiter la taille avec du css:
<select style="width: 20px" >
20 étant un exemple :wink:

Sinon tu seras obligé de tronquer le contenu avec substr()

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 355 Messages

22 janv. 2006, 07:01

OK merci encore :wink:

Quand on selectionne un lien le menu reste sur le lien selectionner, avec Dreawever on peut modifier ceci:
onChange="change_site();"
Comme cela:
onChange="MM_jumpMenu('parent',this,1)"
Mais si je fait sa les liens ne fonctionnent plus.

Eléphant du PHP | 355 Messages

22 janv. 2006, 09:24

J'ai un deuxième menu donc qui fonctionne un petit peut diférament:
<form NAME="menu1"style="margin: 0;">  
<select NAME="popup" onChange="change_site();" style="background-color:#313131; color:#8000FF; width: 200px" size="1"> 
<option>Mes outils php</option>
<?php 
$directories = glob("*",GLOB_ONLYDIR);  // On cible le répertoire des fichiers à lister
foreach ($directories as $dir) { // On créer un boucle
if ($dir != 'Desktop.ini' && $dir !='img') {  // On maques les fichiers
echo '<option value='.$dir.'/index.php>'.basename($dir).'</option>'; // Ici le [ basename ] indique de ne pas afficher le chemin des fichiers
} 
}   
?> 
</select></form><br>
Ici le dir liste les répertoires, dans chaque répertoire se trouve un fichier index.php, dans le lien j'ai donc ajouter index.php:
echo '<option value='.$dir.'/index.php>'.basename($dir).'</option>';
Se code ne fonctionne pas, sauriez vous m'aider a l'adatper ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 janv. 2006, 15:06

toujours la même métode:

que donne le code source généré ? les liens sont-ils corrects ?

un message d'erreur ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 2144 Messages

22 janv. 2006, 15:50

fonctionne pas, sauriez vous m'aider a l'adatper ?
Cela veut dire quoi "adapter"? Ce code vient d'où ?