{html_radios} 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.
| Nom attribut | Type | Requis | Defaut | Description |
|---|---|---|---|---|
| name | chaîne de caractères | Non | radio | Nom de la liste boutons radio |
| values | tableau | Oui, à moins que vous n'utilisiez l'attribut options | n/a | Le tableau des valeurs des boutons radio |
| output | tableau | Oui, à moins que vous n'utilisiez l'attribut options | n/a | Un tableau de libellés pour les boutons radio |
| checked | chaîne de caractères | Non | empty | Les boutons radios sélectionnés |
| options | tableau associatif | Oui, à moins que vous n'utilisiez values et outputs | n/a | Un tableau associatif valeurs / libellés |
| separator | chaîne de caractères | Non | empty | Chaîne de séparation à placer entre les boutons radio |
| assign | chaîne de caractères | Non | empty | Assigne les balises des boutons radio à un tableau plutôt que de les afficher |
Les attributs requis sont
valuesetoutput, à moins que vous n'utilisezoptionsà la place.Tous les affichages sont conformes XHTML.
Tous les paramètres qui ne sont pas dans la liste ci-dessus sont affichés sous la forme de paire nom/valeur dans la balise
<input>créées.
Example 8.16. {html_radios} : Première exemple
<?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 />'}
Example 8.17. {html_radios} : Deuxième exemple
<?php
$smarty->assign('cust_radios', array(
1000 => 'Joe Schmoe',
1001 => 'Jack Smith',
1002 => 'Jane Johnson',
1003 => 'Charlie Brown'));
$smarty->assign('customer_id', 1001);
?>
Où le template 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 />
Example 8.18. {html_radios} - Exemple avec une base de données (e.g. PEAR ou ADODB):
<?php
$sql = 'select type_id, types from contact_types order by type';
$smarty->assign('types',$db->getAssoc($sql));
$sql = 'select contact_id, name, email, contact_type_id
from contacts where contact_id='.$contact_id;
$smarty->assign('contact',$db->getRow($sql));
?>
La variable assignée depuis la base de données ci-dessus sera affichée avec le template :
{html_radios name='contact_type_id' options=$contact_types
selected=$contact.contact_type_id separator='<br />'}
Voir aussi
{html_checkboxes} et
{html_options}.
