Lien menu déroulant en php

Résolu/Fermé
yelem Messages postés 74 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 3 juin 2014 - 6 mars 2011 à 02:47
yelem Messages postés 74 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 3 juin 2014 - 7 mars 2011 à 15:05
Bonjour à tous.
J'ai un problème qui va sans doute paraître très banal à beaucoup mais voilà je débute en programmation et je dois faire un menu déroulant en php (surtout pas en javascript, ce serait trop facil). Mon menu propose des page html, jusque là, aucun problème. Simplement je voudrais que lorsqu'on sélectionne une page, on y soit automatiquement dirigé ou bien qu'un bouton nous permette de nous y rendre. Et c'est là que je bloque. Mon menu marche, mais le lien ne se fait pas avec la page choisit. Si vous pouviez m'aider ce serai super.

Merci de votre aide.

Voici mon code:

Dans mon head :

<script type="text/javascript">

function Lien()
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options[i].value;

<INPUT TYPE="text" NAME="nom"> <a href="url">Lien</a>
}
</script>

Dans mon body:

<?php
$mydir = '.';
if ( $dir = @opendir($mydir) )
{
while (($file = readdir($dir)) !== false)
{
if($file != ".." && $file != ".")
{
if (substr($file,strrpos($file, ".")) == ".html")
{
$filelist[] = $file;
}
}
}

closedir($dir);

}
$nb=count($filelist);
echo '<FORM NAME="Choix">';
echo '<SELECT NAME="Liste" onChange="Lien()">';
echo '<OPTION SELECTED VALUE="">Choisir une couche à afficher </option>';
for ($i=0;$i<$nb;$i++)
echo '<OPTION VALUE="',basename($filelist[$i], "."),'">',basename($filelist[$i], ".");
echo '</OPTION>';
echo '</SELECT>';
echo '</FORM>';
?>


A voir également:

1 réponse

gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 171
Modifié par gaerebut le 7/03/2011 à 11:29
Bonjour,

je pense que tu ne comprends pas trop le rôle du PHP dans une page.
Le php est uniquement exécuté côté serveur et ne peut pas interagir avec le client sur un simple click.
Ce que tu veux toi, c'est qu'une action se passe au click sur l'item.
Voici un exemple:

<select onchange="location.href=this.options[this.selectedIndex].value"> 
 <option value="https://www.google.fr/?gws_rd=ssl">Google</option> 
 <option value="https://fr.yahoo.com/">Yahoo!</option> 
 <option value="https://www.commentcamarche.net/">Comment ca marche</option> 
</select>


Arrêtes-moi si ce n'est pas ce que tu cherches !

A+
Gaerebut
0
yelem Messages postés 74 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 3 juin 2014 23
7 mars 2011 à 15:05
Désolé, je me suis apperçue de mon erreur après coup et j'ai réalisé un script qui convenait beaucoup mieux. Au départ j'avais fait un code similaire à celui que tu me propose et qui marchait très bien, mais mon prof voulait qu'on le fasse en php (pourquoi mystère vu que JavaScript est là pour ça).
Merci en tout cas pour ton aide.
Yelem
0