{html_radios}

{html_radio} est une fonction personnalisée qui crée des boutons radio html à partir des données fournies. Elle prend en charge les éléments sélectionnés par défaut. Les attributs requis sont values et output, à moins que vous n'utilisiez options à la place. La sortie générée est compatible XHTML.

Nom attributTypeRequisDefautDescription
namechaîne de caractèresNonradionom de la liste boutons radio
valuestableauOui, à moins que vous n'utilisiez l'attribut optionsn/aLe tableau des valeurs des boutons radio
outputtableauOui, à moins que vous n'utilisiez l'attribut optionsn/aUn tableau de libellés pour les boutons radio
checkedchaîne de caractèresNonemptyLes boutons radios sélectionnés
optionstableau associatifOui, à moins que vous n'utilisiez values et outputsn/aun tableau associatif valeurs / libellés
separatorchaîne de caractèresNonemptychaîne de séparation à placer entre les boutons radio

Tous les paramètres qui ne sont pas dans la liste ci dessus sont affichés en tant que paires nom / valeur dans chaque balise <input> créée.

Exemple 8-12. {html_radios} : Exemple 1

<?php

$smarty
->assign('cust_ids', array(1000,1001,1002,1003));
$smarty->assign('cust_names', array(
                                
'Joe Schmoe',
                                
'Jack Smith',
                                
'Jane Johnson',
                                
'Charlie Brown')
                              );
$smarty->assign('customer_id'1001);

?>

Où le template est :

{html_radios name="id" values=$cust_ids output=$cust_names
       selected=$customer_id separator="<br />"}

Exemple 8-13. {html_radios} : Exemple 2

<?php

$smarty->assign('cust_radios', array(
                                1000 => 'Joe Schmoe',
                                1001 => 'Jack Smith',
                                1002 => 'Jane Johnson',
                                1003 => 'Charlie Brown'));
$smarty->assign('customer_id', 1001);

?>

Où index.tpl est :

{html_radios name="id" options=$cust_radios selected=$customer_id separator="<br />"}

Les deux exemples ci-dessus afficheront :

<label for="id_1000">
<input type="radio" name="id" value="1000" id="id_1000" />Joe
Schmoe</label><br />
<label for="id_1001"><input type="radio" name="id" value="1001" id="id_1001"
checked="checked" />Jack
Smith</label><br />
<label for="id_1002"><input type="radio" name="id" value="1002" id="id_1002" />Jane
Johnson</label><br />
<label for="id_1003"><input type="radio" name="id" value="1003" id="id_1003" />Charlie
Brown</label><br />

Exemple 8-14. {html_radios} - Exemple avec une base de données (eg PEAR ou ADODB):

<?php

$sql 
'select type_id, types from types order by type';
$smarty->assign('types',$db->getAssoc($sql));

$sql 'select contact_id, name, email, type_id
     from contacts where contact_id='
.$contact_id;
$smarty->assign('contact',$db->getRow($sql));

?>

et le template :

{html_radios name="type" options=$types selected=$contact.type_id separator="<br />"}

Voir aussi {html_checkboxes} et {html_options}.