Bonjour,
J'essaie d'utiliser AJAX (pour la première fois de ma vie) et si mes premiers essais ont été positifs avec les méthodes "GET". et "POST" sans parametres il n'en est pas de même dès que je veux passer des paramètres. Cela fait des heures que je cherche en vain. Ma procédure PHP pour l'instant ne fait rien d'autre que de renvoyer un message.
J'ai remarqué l'échec dès que j'ajoute la ligne : setRequestHeader("Content-type", "application/x-www-form-urlencoded"); J'ai essayé plusieurs content_type (par exemple text/html) mais cela ne change rien.
Juste une question subsidiaire :
En admettant que les paramètres soient correctement passés à PHP, faut-il utiliser $_REQUEST ou $_POST ? ( logiquement je pencherais pour $_POST)
Une idée serait la bienvenue.
Merci d'avance.
Gégé
testAJAX.html
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 function detailVille(){ var xmlhttp; str = document.getElementById("MonDep").value ; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } if (str.length==0) { alert("zero"); document.getElementById("MonTexte").innerHTML="OK entré"; return; } var params = "Departement="+str ; xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { // document.getElementById("MonTexte").innerHTML=xmlhttp.responseText; alert(xmlhttp.responseText); } } // Utilisation du mode GET qui marche bien /* xmlhttp.open("GET","testAjax.php?Departement="+str,true); xmlhttp.send(); */ // Utilisation du mode POST qui ne marche pas. xmlhttp.open("POST","testAjax.php",true); setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.setRequestHeader("Content-length", params.length); xmlhttp.setRequestHeader("Connection", "close"); xmlhttp.send(params); }
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <body> <center <h2><font color="blue"> Taper un numéro pour lister les différents marchés de ce département, puis cliquez sur "Chercher". </font></h2><p><p> <form action=""> Numéro du département : <input type="text" size="2" id="MonDep" /><p> </form> <button type="button" onclick="detailVille()">Chercher</button> <div id="MonTexte"></div> </body>
Ma procédure PHP : testAJAX.php
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php echo "Ca fonctionne"; die(); ?>
Partager