Bonjour,
Je débute dans l'Ajax et je dois lier 6 listes entre elles grace à une base de données
Je me suis donc inspiré de l'exemple dans le tutoriel
Le problème est que je dois modifier dynamiquement les 5 autres listes quand le contenu d'1 est changée
J'ai donc 5 appels à des fonctions de ce type: (avec à chaques fois le fichier de destination modifié).
Mais dans le fichier ajaxactivite.php je ne récupére rien dans les variables (par exemple isset($_POST["idproduction"]) est toujours à false).
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
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
48
49 function maj_activite(){ getXhr(); xhr.onreadystatechange = function(){ if(xhr.readyState == 4 && xhr.status == 200){ leselect = xhr.responseText; document.getElementById('divactivite').innerHTML = leselect; } } xhr.open("POST","ajaxactivite.php",true); xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ici, l'id de l'activite sel1 = document.getElementById('activite'); idactivite = sel1.options[sel1.selectedIndex].value; // ici, l'id de la production sel2 = document.getElementById('production'); idproduction = sel2.options[sel2.selectedIndex].value; // ici, l'id du produit sel3 = document.getElementById('produit'); idproduit = sel3.options[sel3.selectedIndex].value; // ici, l'id du continent d'export sel4 = document.getElementById('exportcontinent'); idexportcontinent = sel4.options[sel4.selectedIndex].value; // ici, l'id du pays d'export sel5 = document.getElementById('exportpays'); idexportpays = sel5.options[sel5.selectedIndex].value; // ici, l'id du continent d'import sel6 = document.getElementById('importcontinent'); idimportcontinent = sel6.options[sel6.selectedIndex].value; // ici, l'id du pays d'import sel7 = document.getElementById('importpays'); idimportpays = sel7.options[sel7.selectedIndex].value; // envoi des 7 arguments xhr.send("idactivite="+idactivite+"&idproduction="+idproduction+"&idproduit="+idproduit+"&idexportcontinent="+idexportcontinent+"&idexportpays="+idexportpays+"&idimportcontinent="+idimportcontinent+"&idimportpays="+idimportpays); }
Là ou je ne comprend plus grand chose est que si je ne fais appel qu'à une fonction de ce genre ça fonctionne parfaitement...
A noter que l'appel aux 5 fonctions se fait de cette manière et que j'ai un OnChange = 'activite_changee()' dans la balise select
et donc si je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function activite_changee(){ maj_production(); maj_produit(); maj_export_continent(); maj_export_pays(); maj_import_continent(); maj_import_pays(); }
ca fonctionne....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function activite_changee(){ maj_production(); }
J'espère avoir été clair...
Merci d'avance!
Partager