Voila je manipule les templates avec Phplib et je realise une liste deroulante dont l'un des champs doit etre prepositionné(selected)
Cette liste est réalisé avec un bloc imbriqué
for ($i=0;$i<$nbElts;$i++)
{
if ($tab1[$j]['state'] ==$tab[$i])
{
$selected = "selected=\"selected\"";
}
else
{
$selected = "";
}
$moteur->set_var('Liste',$tab[$i]);
$moteur->set_var('SELECTED_',$selected);
$moteur->parse('bloc_SELECTListe','SELECTListe',TRUE);
}
tpl:
Code : Tout sélectionner
<!-- BEGIN SELECTListe -->
<option value="{Liste}" {SELECTED_}>{Liste}</option>
<!-- END SELECTListe-->
En gros j'otient cela :
Code : Tout sélectionner
<select >
<option value="tab1" >tab1</option>
<option value="tab2" >tab2</option>
<option value="tab3" selected>tab3</option>
</select>
<select >
<option value="tab1" >tab1</option>
<option value="tab2" >tab2</option>
<option value="tab3" selected>tab3</option>
</select>
<select >
<option value="tab1" >tab1</option>
<option value="tab2" >tab2</option>
<option value="tab3" selected>tab3</option>
</select>
etc...
$moteur->set_block($id_temp,'SELECTListe','bloc_SELECTListe');//Initialisation du bloc Interne
$moteur->set_block($id_temp,'SELECTListe1','bloc_SELECTListe1');//Initialisation du bloc Externe
$nbElts=10
//Bloc Externe
for($j=0;$j<10;$j++)
{
for ($i=0;$i<$nbElts;$i++)
{
if ($tab1[$j]['state'] ==$tab[$i])
{
$selected = "selected=\"selected\"";
}
else
{
$selected = "";
}
$moteur->set_var('Liste',$tab[$i]);
$moteur->set_var('SELECTED_',$selected);
$moteur->parse('bloc_SELECTListe','SELECTListe',TRUE);
}
$moteur->set_var('SELECTListe',"");
//Fin Bloc Interne
$moteur->parse('bloc_SELECTListe1',1',TRUE);
}
tpl:
Code : Tout sélectionner
<!-- BEGIN SELECTListeActionPlan -->
<div align="center"><select name="ListeActionStatut[{INDEX}][]" value="Identified">
<option value=vide></option>
<!-- BEGIN SELECTListeActionStatut -->
<option value="{ListeActionStatut}" {SELECTED_ActionStatut}>{ListeActionStatut}</option>
<!-- END SELECTListeActionStatut -->
</select>
</div>
<!-- END SELECTListeActionPlan -->