Bonjour tout le monde,

J'ai ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
//je concatène
$return='{';
//ensuite chaque nom des options séparés par des :
while($row = mysql_fetch_assoc($res)) 
		{
			$return .='"'.$row["MNEMONIC"].'":"'.$row["MNEMONIC"].'",';	
		}
//je remplace la dernière virgule par la ) dans la variable $return		
$return=preg_replace("/,$/","}",$return);
//je retourne le résultat à AJAX
echo $return;
Le but étant de mettre des options dans une liste déroulante.

Le retour à AJAX n'est pas correct car l'alerte (MesOption) me donne :
undefine
Voici le code javascript (AJAX) :

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
if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
		{
 
		//voir doc sur hash pour expliquer ceci
		MesOption=eval("(" + xhr.responsText + ")");
		alert(MesOption);
for (key in MesOption) 
		{
			LeTexte = MesOption[key];
			alert(LeTexte);
			LaValeur = key;
			var NewOption = document.createElement('option');
			NewOption.value = LaValeur;
			NewOption.text = LeTexte;
			document.getElementById('Nom_cours').appendChild(NewOption);
		}
On ne rentre pas dans la boucle for.

Merci d'avance pour l'aide.

beegees