Bonjour,
J'ai un petit probl�me pour r�cup�rer des param�tres pass�s par POST via un objet XMLHttpRequest.
Je m'explique :
j'ai dans un page PHP "index.php" une image telle que :
PHP :
La fonction javascript ValidImg se trouve dans un autre fichier JS et est de la forme :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5 <form name="frm" id="frm" method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>" > //code zappé echo "<img id=\"$name\" src=\"$srcImg\" onclick=\"return ValidImg($id,$var1,$var2);\">" ;
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 function ValidImg(id,var1,var2) { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } else { xmlHttp.onreadystatechange= function () { ReadyValidImg(var1,var2) } ; var url="descriptionSpectacles.php"; // lancement de la requete xmlHttp.open('POST', url, true); xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); var data="id="+id+"&c="+c+"&l="+l; xmlHttp.send(data); } } function ReadyValidImg(var1,var2) { if (xmlHttp.readyState==4) { alert("Alert"); //marche document.getElementById(var1).src="Blabla"; document.getElementById(var2).innerHTML = "blabla"; } }
avec la fonction GetXmlHttpObject() suivante :
Puis, j'aimerais r�cup�rer les param�tres var1 et var2 de la requ�te GET de la fonction ValidImg() dans ma page PHP "index.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
19
20
21
22
23 function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { //Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
Pour cela, je fais ceci au d�but de la page "index.php" :
Mon pb : je ne passe pas dans cette boucle.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5 if ((isset($_POST['var1'])) && (isset($_POST['var2']))) { echo "passage de parametres par post OK"; fctPHP(var1,var2); }
Dans FireBug, je vois la requete POST avec les bonnes variables (var1 et var2) et avec un statut "200 OK". Pourquoi ces variables ne passent pas la condition "isset" ?? (le probl�me ne vient pas du echo - lui, marche)
Merci beaucoup pour votre aide.
TheLostMind.
Partager