|
Publicité | ||||||||||||||||||||||
|
|
#1 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: avril 2009
Localisation: lille
Messages: 58
|
bonjour à tous
je sèche sur un probleme depuis plusieurs heures et je vien sdemander de l'aide. je programme des pages en php incluant des formulaires. en fonction du choix dans un premier menu deroulant, un second menu deroulant s'affiche et en fonction du choix dans celui-ci, un troisieme s'affiche. j'utilise un petit script java pour recuperer la variable issue du 1er menu deroulant qui permet de creer le second menu deroulant, puis la seconde variable issue du second menu pour construire le troisieme menu deroulant. tout marche tres bien pour le 1er menu mais ca bloque au second. quel est le souci dans mon javascript?? voici les deux script java: Code :
<script type="text/javascript"> function redirect(selectedValue){ var selectedValue = document.getElementById('genre').options[document.getElementById('genre').selectedIndex].value; window.location.href = 'menu.php?genre='+selectedValue } </script> <script type="text/javascript"> function redirectdeux(selectedValue){ var selectedValue = document.getElementById('produit').options[document.getElementById('produit').selectedIndex].value; window.location.href = 'menu.php?genre='+<?php echo $genre; ?>+ '&produit='+selectedValue2 } </script> Code :
<form action="menu.php" method="get"> <select name="genre" id="genre" onchange="redirect(this.options[this.selectedIndex].value)"> <option value=""<?php echo choixParDefaut(''); ?>></option> <option value="HOMME"<?php echo choixParDefaut('HOMME'); ?>>HOMME</option> <option value="FEMME"<?php echo choixParDefaut('FEMME'); ?>>FEMME</option> <option value="MIXTE"<?php echo choixParDefaut('MIXTE'); ?>>MIXTE</option> </select> <?php mysql_select_db($database_affectation, $affectation); if(isset($_GET['genre'])) $genre=$_GET['genre']; else $genre=""; if(isset($_GET['genre'])) { $query_Recordset1 = "SELECT DISTINCT produit FROM stock WHERE genre = '$genre' ORDER BY produit"; $Recordset1 = mysql_query($query_Recordset1, $affectation) or die(mysql_error()); echo "<form action='menu.php' method='get'> <select name='produit' id='produit' onchange='redirectdeux(this.options[this.selectedIndex].value)'>\n"; while ($ligne = mysql_fetch_assoc($Recordset1)) { extract($ligne); echo "<option value='$produit'".choixParDef($produit).">$produit\n"; } echo "</select>\n";} ?> |
|
|
|
|
|
#2 (permalink) |
|
Membre chevronné
![]() Date d'inscription: mars 2008
Messages: 625
|
Bonjour,
Vous passez en paramètre votre selectedValue et la première chose que vous faites dans vos fonctions, c'est de déclarer une autre variable selectedValue et de rerécupérer votre valeur sélectionnée. Ensuite, dans la fonction deux, vous utilisez "$genre;". Comment est-ce que la fonction connait cette variable ? Elle est globale ? |
|
|
|
|
|
#3 (permalink) |
![]() Date d'inscription: juin 2008
Localisation: Bordeaux
Âge: 39
Messages: 6 690
|
Et aussi, en plus de ce qu'a dit vermine :
Code :
window.location.href = 'menu.php?genre='+<?php echo $genre; ?>+ '&produit='+selectedValue2 Et pour finir, une variable et un paramètre qui ont pour nom un mot clé de JavaScript...
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
|
|
|
|
|
#4 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: avril 2009
Localisation: lille
Messages: 58
|
merci pour vos conseils
j'ai trouvé une solution qui me permet d'éviter les confusions dan smon code javascript. je n'utilise plus que du code php, j'ai juste modifié une propriété qui me permet lorsque je clique sur ma liste déroulante de "poster" l'information. Code :
<form action='menu.php' method='post'> <select name='nom' id='nom' onChange = submit();> |
|
|
|
|
|
![]() |
||
javascript et php
|
||
| Outils de la discussion | |
|
|