What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
{html_checkboxes}
est une
fonction utilisateur
qui crée un groupe de cases à cocher avec les données fournies. Elle prend
en compte la liste des éléments sélectionnés par défaut.
Nom attribut | Type | Requis | Defaut | Description |
---|---|---|---|---|
name | chaîne de caractères | Non | checkbox | Nom de la liste de cases à cocher |
values | array | Oui, à moins que vous n'utilisiez l'attribut option | n/a | Un tableau de valeurs pour les cases à cocher |
output | array | Oui, à moins que vous n'utilisiez l'attribut option | n/a | Un tableau de sortie pour les cases à cocher |
selected | chaîne de caractères/tableau | Non | empty | Les éléments cochés de la liste |
options | Tableau associatif | Oui, à moins que vous n'utilisiez values et output | n/a | Un tableau associatif de valeurs et sorties |
separator | chaîne de caractères | Non | empty | chaîne de caractère pour séparer chaque case à cocher |
assign | chaîne de caractères | Non | empty | Assigne les balises d'un checkbox à un tableau plutôt que de les afficher |
labels | booléen | Non | true | Ajoute la balise <label>- à la sortie |
assign | chaîne de caractères | Non | empty | Assigne la sortie à un tableau dont chaque checkbox est un élément. |
Les attributs requis sont values
et
output
, à moins que vous utilisez
options
à 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 paires nom/valeur dans chaque balise <input> crées.
Example 8.9. {html_checkboxes}
<?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ù index.tpl est :
{html_checkboxes name='id' values=$cust_ids output=$cust_names selected=$customer_id separator='<br />'}
ou bien, le code PHP est :
<?php $smarty->assign('cust_checkboxes', array( 1000 => 'Joe Schmoe', 1001 => 'Jack Smith', 1002 => 'Jane Johnson', 1003 => 'Charlie Brown') ); $smarty->assign('customer_id', 1001); ?>
et index.tpl est :
{html_checkboxes name='id' options=$cust_checkboxes selected=$customer_id separator='<br />'}
Les deux examples donnent à l'écran :
<label><input type="checkbox" name="id[]" value="1000" />Joe Schmoe</label><br /> <label><input type="checkbox" name="id[]" value="1001" checked="checked" />Jack Smith</label> <br /> <label><input type="checkbox" name="id[]" value="1002" />Jane Johnson</label><br /> <label><input type="checkbox" name="id[]" value="1003" />Charlie Brown</label><br />
Example 8.10. Exemple avec une base de données (eg PEAR ou ADODB) :
<?php $sql = 'select type_id, types from contact_types order by type'; $smarty->assign('contact_types',$db->getAssoc($sql)); $sql = 'select contact_id, contact_type, contact from contacts where contact_id=12'; $smarty->assign('contact',$db->getRow($sql)); ?>
Le résultat des requêtes de la base de données sera affiché avec :
{html_checkboxes name='contact_type_id' options=$contact_types selected=$contact.contact_type_id separator='<br />'}
Voir aussi
{html_radios}
et
{html_options}
.