Bonjour tout le monde,

J'aimerais savoir si il est possible de renvoyer deux éléments en ajax ?

Je m'explique :

J'aimerais renvoyer un entier et une chaine de caractère, j'utilise donc ce code :

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
<?php
//Permet d'afficher les images dans la page principale quand le user choisit une lettre erronée
 
$conn = mysql_connect("localhost","root","mdp"); 
$db=mysql_select_db("EICE", $conn);
 
$sql_nouveau_mot = "SELECT Avancement_Mot FROM mots WHERE ID = " .$_POST['ID']." ";
//echo $sql_nouveau_mot;
$req_nouveau_mot = mysql_query($sql_nouveau_mot);
$nouveau_mot_a_afficher = mysql_fetch_array($req_nouveau_mot);
 
echo $nouveau_mot_a_afficher['Avancement_Mot'];
 
$sql_image_actuelle = "SELECT Avancement_Image FROM mots WHERE ID = " .$_POST['ID']." ";
$req_image_actuelle = mysql_query($sql_image_actuelle);
$image_actuelle = mysql_fetch_array($req_image_actuelle);
 
echo $image_actuelle['Avancement_Image'];
 
?>
et voici le code javascript :

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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
function getXhr() {
	var xhr = null;
 
	if(window.XMLHttpRequest || window.ActiveXObject) {
		if(window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP"); //IE
			} catch(e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP"); //IE
			}
		} else {
			xhr = new XMLHttpRequest(); //firefox
		}
	} else {
		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
		return null;
	}
 
	return xhr;
}
function Affich_picture(ID)
{
 
	//alert(diff);
	/*Ce if me permet de ne pas traiter le code si la valeur choisie est "Choisissez la difficulté"*/
		var xhr = getXhr();
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function()
		{
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			//alert(xhr.readyState);
			//alert(xhr.status);
			if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
			{
 
				//ici, je reçois tout simplement le $_POST['note']
				image_a_afficher = xhr.responseText;
				//alert(image_a_afficher);
				/*ci-dessous document.getElementById('note_originale'+id).value, c'est le champ caché*/
				if(image_a_afficher < 5)
				{
 
					document.getElementById('mot').innerHTML = '<font size="+6" color="#0033FF">' + LeMot + '</font>' ;	
					document.getElementById('image_pendu').innerHTML = '<img src="images/'+image_a_afficher+'.jpg" alt="potence" width="585" height="360" />' ;	
 
				}
				else
				{
					document.getElementById('image_pendu').innerHTML = '<img src="images/'+image_a_afficher+'.jpg" alt="potence" width="585" height="360" />' ;
					document.getElementById('PERDU').innerHTML = '<img src="images/game_over.jpg" alt="potence" width="585" height="360" />' ;	
					return;
				}
				// On se sert de innerHTML pour afficher le bouton
 
			}
		}
 
		//Pour montrer une erreur, je pourrais retirer /PENDU et faire un alert de status
		xhr.open("POST","AJAX/PENDU/Afficher_Image.php",true);	
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
		xhr.send("ID="+ID);
 
 
 
}
Merci d'avance.

beegees