[AJAX]Listes liées multiples
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é).
Code:
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);
} |
Mais dans le fichier ajaxactivite.php je ne récupére rien dans les variables (par exemple isset($_POST["idproduction"]) est toujours à false).
Là ou je ne comprend plus grand chose est que si je ne fais appel qu'à une fonction de ce genre ça fonctionne parfaitement...:roll:
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
Code:
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();
} |
et donc si je fais
Code:
1 2 3
| function activite_changee(){
maj_production();
} |
ca fonctionne....
J'espère avoir été clair...:?
Merci d'avance!