Bonjour,

J'ai ce code PHP qui filtre une table :

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
 
$sql_declotured = "SELECT Nom, Prenom, Matricule FROM etudiants WHERE Cloture = 1 ORDER BY Nom";
	//echo $sql_declotured;
	$query_declotured = mysql_query($sql_declotured);
	$nombre = mysql_num_rows($query_declotured);
 
	if($nombre > 0)
	{
		$return='{';
		//ensuite chaque nom des options separes par des ":"
		while($row = mysql_fetch_assoc($query_declotured)) 
		{
			//création de la liste déroulante des étudiants non clôturés
			$return .='"'.$row["Matricule"].'":"'.$row["Nom"].' ' . $row["Prenom"].'",';	
		}
		//je remplace la derniere virgule par la ) dans la variable $return		
		$return=preg_replace("/,$/","}",$return);
		//je retourne le rsultat a AJAX
		echo $return;
	}
	else
	{
		echo 'VIDE';
	}
Lorsque l'alerte m'informe que le retour est égal à "VIDE" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
if(xhr.readyState == 4 && xhr.status == 200)
			  {
					retour = xhr.responseText;
					alert(retour);
Le if n'exécute pas le code du if :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
if(retour == "VIDE")
					{
						alert("ici");
						document.getElementById('message_ou_liste').innerHTML = 'Aucn étudiant n\'est clôturé';
					}
Mais va dans le else :

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
 
else
					{
						emptySel(document.getElementById('et_clotured'));
						MesOption=eval("(" + retour + ")");
 
						for (key in MesOption) 
						{
							LeTexte = MesOption[key];
							LaValeur = key;
							var NewOption = document.createElement('option');
							NewOption.value = LaValeur;
							NewOption.innerHTML=LeTexte;
							document.getElementById('et_clotured').appendChild(NewOption);
						}
 
					}
J'ai vérifié, VIDE ne contient aucun espace avant ou après.

Je ne comprends vraiment pas

Merci d'avance pour votre aide.

beegees