par
Ryle » 23 janv. 2007, 13:47
Ce serait effectivement plus optimisé de tester directement dans chaque option, plutôt que de multiplier le select (surtout si une valeur ou un libellé change, ca évite d'avoir à le modifier n fois).
L'opérateur ternaire (cf. FAQ) est très pratique pour cela :
echo '<select name="ntype" value="'.$contenu[type].'">';
echo '<option '.(($contenu['type'] == 1) ? 'SELECTED' : '').' value="1">Salle</option>';
echo '<option '.(($contenu['type'] == 2) ? 'SELECTED' : '').' value="2">Asso/festival</option>';
echo '<option '.(($contenu['type'] == 3) ? 'SELECTED' : '').' value="3">Bar Concert</option>';
echo '<option '.(($contenu['type'] == 4) ? 'SELECTED' : '').' value="4">Mairie/autres..</option>';
echo '</select>';
Ce serait effectivement plus optimisé de tester directement dans chaque option, plutôt que de multiplier le select (surtout si une valeur ou un libellé change, ca évite d'avoir à le modifier n fois).
L'opérateur ternaire (cf. FAQ) est très pratique pour cela :
[php]echo '<select name="ntype" value="'.$contenu[type].'">';
echo '<option '.(($contenu['type'] == 1) ? 'SELECTED' : '').' value="1">Salle</option>';
echo '<option '.(($contenu['type'] == 2) ? 'SELECTED' : '').' value="2">Asso/festival</option>';
echo '<option '.(($contenu['type'] == 3) ? 'SELECTED' : '').' value="3">Bar Concert</option>';
echo '<option '.(($contenu['type'] == 4) ? 'SELECTED' : '').' value="4">Mairie/autres..</option>';
echo '</select>';[/php]