Bonjour,
J'ai la fonction suivante:
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
function doOptionsHTML(int $iLevel, $id, $toSelect){
	$language = $_SESSION['language'];
 
	$iLevel++;
	$data	= getNAF($language, $iLevel, $id);
	$pattern	= "<option value='%s'%s>%s</option>";
	var_dump(getDBText($language,16)); // retourne '&lt; ---- &gt;'
	$html		= "<option value='' label='".getDBText($language,16)."'></option>";
	if (!empty($data)){
		foreach($data as $aItem){
			$selected = ($toSelect == $aItem['id']) ? ' selected': '';
			$html .= sprintf($pattern, $aItem['id'], $selected, $aItem['code'].' - '.$aItem[$language.'_text']);
		}
	}
	return $html;
}
Le problème se situe au niveau de la première option vide à la ligne 8. Cette option reste vide au lieu d'afficher le contenu du label renvoyé par le var_dump de la ligne 7. Je comprends d'autant moins que
  • j'utilise le code de la ligne 8 ailleurs avec un fonctionnement correct (affichage de la valeur de l'attribut label de l'option '&lt; ---- &gt;')
  • le rendu (ctrl+u) s'affiche correctement:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<label><span>Section</span><select name='naf[]'><option value='' label='&lt; ---- &gt;'></option><option value='1'>texte option 1</option><option value='2'>texte option 2</option></select></label><br>
Je précise que la balise <select> est ajouté à l'extérieur de cette fonction comme le montre le rendu.