Bonjour,
Je souhaiterais à partir d'un XMLHttpRequest récupérer la sélection d'une liste déroulante et l'envoyer coté PHP en GET afin de modifier ma variable $année dans mon script PHP.
Le souci c'est que la variable $_GET reste "undefined" alors que ma requête es bien exécutée.
Je suis bloqué et je ne vois pas l'erreur. Pouvez-vous m'aider ? Merci
coté JavaScript:
Code JavaScript : 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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 mem.onclick = function(){ let mem = document.getElementById("annee"); //let formData = new FormData(document.forms.f1); //On crée un objet XMLHttpRequest var xhr = new XMLHttpRequest(); //onreadystatechange function xhr.onreadystatechange = function(){ if (this.readyState == 4 && this.status == 200){ console.log("connexion réussie !"); //console.log(mem.value); document.getElementById('p1').innerHTML=mem.value; //console.log(xhr.response); //console.log(xhr); //rafraichit la page //window.location.replace('http://localhost/module/tdb.php') } else if (this.readyState == 4){ console.log("une erreur est survenue"); } }; console.log(mem.value); //alert (mem.value); var data="an="+ mem.value; //On initialise notre requête avec open() xhr.open("GET", "tdb.php", true); //Définition des paramètres xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); //On veut une réponse au format JSON xhr.responseType = "json"; //On envoie la requête xhr.send(data); console.log(data); };
côté PHP
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
18 <label for="annee">Sélectionner l'année :</label> <form> <select name="annee" id="annee"> <option value=2022 selected>2022</option> <option value=2023>2023</option> <option value=2024>2024</option> </select> </form> <script type="text/javascript" src="tdb.js"></script> <p id="p1"></p> <?php $annee = json_encode($_GET['an']); ?>
Partager