Dans le même formulaire,je voudrais passer la valeur sélectionnée dans une première select à une deuxième select sous forme d'une variable php, sans soumettre pour autant le formulaire grâce à ajax.

La 1ère select affiche la liste des marques de voiture, ex :
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<select name="BRAND" id="BRAND">
	<option value="Audi">Audi</option>
	<option value="BMW">BMW</option>
	<option value="MERCEDES">MERCEDES</option>
</select>

Pour récupérer la valeur de la marque j'utilise le code js suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script>
jQuery(document).ready(function($){
    $("#BRAND").change(function() {
       var selectedbrand = $("#BRAND").val();
 
jQuery.ajax({
        type: 'GET',
        url: 'mysite.com/script/myscript.php',
        data: {selectedbrand:selectedbrand},
        success: function(data) {
        console.log(data);
        }
    });
 
    }); 
});
</script>
et le script myscript.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<?php
$selectedbrand = $_GET['selectedbrand'];
?>
Le code fonctionne car si dans function(data) je rajoute alert($selectedbrand) je récupère bien la valeur de la marque sélectionnée.

En revanche, $selectedbrand n'est pas interprétée dans ma deuxième select qui après selection de la marque devrait afficher la liste des voitures lui correspondant.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<select name="CAR" id="CAR">...</select>
Pour cette deuxième select la liste des voitures est obtenue dynamiquement en php en :
- utilisant $selectedbrand comme variable php pour remonter la marque sélectionnée
- réinjectant $selectedbrand dans une requête SQL
- parsant le résultat de la requête pour afficher les <options></options>

Cette partie fonctionne car si je force en dur dans ce code php la valeur de $selectedbrand (ex $selectedbrand= 'BMW') j'affiche bien la liste des voitures BMW.

Donc comment puis-je récuperer $selectedbrand dans le code php de ma deuxième select ?

Faut-il revoir le code du js ou du script php exécuté lors d'une selection de la marque ? Ou faut-il modifier le code php de ma select "CAR" ?

Merci de votre aide