Bonjour à tous,

J'utilise Ajax pour envoyer un formulaire.
J'ai deux champs : email et newsletter_divers.

Lors de l'envoi si l'input hidden newsletter_objet (facultatif) a été détecté, j'ai un message qui confirme l'enregistrement de emailET newsletter_divers sinon j'ai un message qui confirme l'enregistrement de email

Mon problème c'est qu'en utilisant Ajax, l'input hidden newsletter_objet n'est pas détecté.
Classiquement sans Ajax tout fonctionne parfaitement ...


mon
Code xhtml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<form method="post" action="newsletter_inscription_result.php" id="envoi2"  name="tirageausort">
	 <div>
		<input type="hidden" value="email" name="champs_obligatoires" />
		<input type="text" id="email22" name="email" class="champ-newsletter" /> 
 
		<input type="hidden" name="newsletter_objet" value="Tirage au sort" /> 
		<input type="text"  name="newsletter_divers" id="newsletterdivers" class="champ-newsletter" />
 
		<input  type="button" onclick="afficheajax()" class="ok-newsletter" value="OK" />
	</div>
</form>

mon
Code AJAX : 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
 
function new_xhr(){  
var xhr_object = null;  
if(window.XMLHttpRequest) 
   xhr_object = new XMLHttpRequest();  
else if(window.ActiveXObject){  
   try {  
                xhr_object = new ActiveXObject("Msxml2.XMLHTTP");  
            } catch (e) {  
                xhr_object = new ActiveXObject("Microsoft.XMLHTTP");  
            }  
}  
else {  
   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");  
   xhr_object = false;  
}  
return xhr_object;  
}  
function afficheajax() {  
var xhr3 = new_xhr();
xhr3.open("POST", "newsletter_inscription_result.php", true); 
xhr3.onreadystatechange = function (){  
if ( xhr3.readyState == 4 ){
if(xhr3.status  != 200){ 
document.getElementById("tirage2").innerHTML ="Erreur code " + xhr3.status;  
} else { 
document.getElementById("tirage2").innerHTML = xhr3.responseText;  
}  
} else { 
document.getElementById("tirage2").innerHTML = "Chargement en cours";  
}  
}  
xhr3.setRequestHeader('Content-Type','application/x-www-form-urlencoded');  
xhr3.send("email="+document.getElementById("email22").value+"&newsletter_divers="+document.getElementById("newsletterdivers").value); 
}

Seul l'email passe ...

Une idée ?

Par avance, Merci