mirror of
				https://github.com/smarty-php/smarty.git
				synced 2025-11-03 22:01:36 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			217 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			217 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="iso-8859-1"?>
 | 
						|
<!-- $Revision$ -->
 | 
						|
<!-- EN-Revision: 1.14 Maintainer: yannick Status: ready -->
 | 
						|
 | 
						|
<sect1 id="language.function.html.checkboxes">
 | 
						|
 <title>{html_checkboxes}</title>
 | 
						|
 <para>
 | 
						|
  {html_checkboxes} est une 
 | 
						|
  <link linkend="language.custom.functions">fonction utilisateur</link>
 | 
						|
  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. Les attributs requis
 | 
						|
  sont values et output, à moins que vous n'utilisiez options à la place.
 | 
						|
  La sortie générée est conforme au XHTML.
 | 
						|
 </para>
 | 
						|
 <informaltable frame="all">
 | 
						|
  <tgroup cols="5">
 | 
						|
   <colspec colname="param" align="center" />
 | 
						|
   <colspec colname="type" align="center" />
 | 
						|
   <colspec colname="required" align="center" />
 | 
						|
   <colspec colname="default" align="center" />
 | 
						|
   <colspec colname="desc" />
 | 
						|
   <thead>
 | 
						|
    <row>
 | 
						|
     <entry>Nom attribut</entry>
 | 
						|
     <entry>Type</entry>
 | 
						|
     <entry>Requis</entry>
 | 
						|
     <entry>Defaut</entry>
 | 
						|
     <entry>Description</entry>
 | 
						|
    </row>
 | 
						|
   </thead>
 | 
						|
   <tbody>
 | 
						|
    <row>
 | 
						|
     <entry>name</entry>
 | 
						|
     <entry>chaîne de caractères</entry>
 | 
						|
     <entry>Non</entry>
 | 
						|
     <entry><emphasis>checkbox</emphasis></entry>
 | 
						|
     <entry>Nom de la liste de cases à cocher</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>values</entry>
 | 
						|
     <entry>array</entry>
 | 
						|
     <entry>Oui, à moins que vous n'utilisiez l'attribut
 | 
						|
     option</entry>
 | 
						|
     <entry><emphasis>n/a</emphasis></entry>
 | 
						|
     <entry>Un tableau de valeurs pour les cases à
 | 
						|
     cocher</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>output</entry>
 | 
						|
     <entry>array</entry>
 | 
						|
     <entry>Oui, à moins que vous n'utilisiez l'attribut
 | 
						|
     option</entry>
 | 
						|
     <entry><emphasis>n/a</emphasis></entry>
 | 
						|
     <entry>Un tableau de sortie pour les cases à cocher</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>selected</entry>
 | 
						|
     <entry>chaîne de caractères/tableau</entry>
 | 
						|
     <entry>Non</entry>
 | 
						|
     <entry><emphasis>empty</emphasis></entry>
 | 
						|
     <entry>Les éléments cochés de la liste</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>options</entry>
 | 
						|
     <entry>Tableau associatif</entry>
 | 
						|
     <entry>Oui, à moins que vous n'utilisiez values et
 | 
						|
     output</entry>
 | 
						|
     <entry><emphasis>n/a</emphasis></entry>
 | 
						|
     <entry>Un tableau associatif de valeurs et
 | 
						|
     sorties</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>separator</entry>
 | 
						|
     <entry>chaîne de caractères</entry>
 | 
						|
     <entry>Non</entry>
 | 
						|
     <entry><emphasis>empty</emphasis></entry>
 | 
						|
     <entry>chaîne de caractère pour séparer chaque case
 | 
						|
     à cocher</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>labels</entry>
 | 
						|
     <entry>booléen</entry>
 | 
						|
     <entry>Non</entry>
 | 
						|
     <entry><emphasis>true</emphasis></entry>
 | 
						|
     <entry>ajoute la balise <label>- à la sortie</entry>
 | 
						|
    </row>
 | 
						|
    <row>
 | 
						|
     <entry>assign</entry>
 | 
						|
     <entry>chaîne de caractères</entry>
 | 
						|
     <entry>Non</entry>
 | 
						|
     <entry><emphasis>empty</emphasis></entry>
 | 
						|
     <entry>assigne la sortie à un tableau dont chaque checkbox est un élément.</entry>
 | 
						|
    </row>
 | 
						|
   </tbody>
 | 
						|
  </tgroup>
 | 
						|
 </informaltable>
 | 
						|
 <para>
 | 
						|
  Tous les paramètres qui ne sont pas listés ci-dessus sont affichés
 | 
						|
  en tant que paires nom/valeur dans chaque balise <input> crée.
 | 
						|
 </para>
 | 
						|
 <example>
 | 
						|
  <title>{html_checkboxes}</title>
 | 
						|
  <programlisting role="php">
 | 
						|
<![CDATA[
 | 
						|
<?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);
 | 
						|
 | 
						|
?>
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
  <para>
 | 
						|
   où index.tpl est :
 | 
						|
  </para>
 | 
						|
  <programlisting>
 | 
						|
<![CDATA[
 | 
						|
{html_checkboxes name='id' values=$cust_ids output=$cust_names
 | 
						|
   selected=$customer_id  separator='<br />'}
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
  <para>
 | 
						|
   ou bien, le code PHP est :
 | 
						|
  </para>
 | 
						|
  <programlisting role="php">
 | 
						|
<![CDATA[
 | 
						|
<?php
 | 
						|
 | 
						|
$smarty->assign('cust_checkboxes', array(
 | 
						|
                                1000 => 'Joe Schmoe',
 | 
						|
                                1001 => 'Jack Smith',
 | 
						|
                                1002 => 'Jane Johnson',
 | 
						|
                                1003 => 'Charlie Brown')
 | 
						|
                              );
 | 
						|
$smarty->assign('customer_id', 1001);
 | 
						|
 | 
						|
?>
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
  <para>
 | 
						|
   et index.tpl est :
 | 
						|
  </para>
 | 
						|
  <programlisting>
 | 
						|
<![CDATA[
 | 
						|
{html_checkboxes name='id' options=$cust_checkboxes
 | 
						|
   selected=$customer_id separator='<br />'}
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
  <para>
 | 
						|
   Les deux examples donnent à l'écran :
 | 
						|
  </para>
 | 
						|
  <screen>
 | 
						|
<![CDATA[
 | 
						|
<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 />
 | 
						|
]]>
 | 
						|
  </screen>
 | 
						|
 </example>
 | 
						|
 <example>
 | 
						|
  <title>
 | 
						|
   Exemple avec une base de données (eg PEAR ou ADODB) :
 | 
						|
  </title>
 | 
						|
  <programlisting role="php">
 | 
						|
<![CDATA[
 | 
						|
<?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));
 | 
						|
 | 
						|
?>
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
  <programlisting>
 | 
						|
<![CDATA[
 | 
						|
{html_checkboxes name="type" options=$types selected=$contact.type_id separator="<br />"}
 | 
						|
]]>
 | 
						|
  </programlisting>
 | 
						|
 </example>
 | 
						|
 <para>
 | 
						|
  Voir aussi
 | 
						|
  <link linkend="language.function.html.radios">{html_radios}</link> et
 | 
						|
  <link linkend="language.function.html.options">{html_options}</link>.
 | 
						|
 </para>
 | 
						|
</sect1>
 | 
						|
 | 
						|
<!-- Keep this comment at the end of the file
 | 
						|
Local variables:
 | 
						|
mode: sgml
 | 
						|
sgml-omittag:t
 | 
						|
sgml-shorttag:t
 | 
						|
sgml-minimize-attributes:nil
 | 
						|
sgml-always-quote-attributes:t
 | 
						|
sgml-indent-step:1
 | 
						|
sgml-indent-data:t
 | 
						|
indent-tabs-mode:nil
 | 
						|
sgml-parent-document:nil
 | 
						|
sgml-default-dtd-file:"../../../../manual.ced"
 | 
						|
sgml-exposed-tags:nil
 | 
						|
sgml-local-catalogs:nil
 | 
						|
sgml-local-ecat-files:nil
 | 
						|
End:
 | 
						|
vim600: syn=xml fen fdm=syntax fdl=2 si
 | 
						|
vim: et tw=78 syn=sgml
 | 
						|
vi: ts=1 sw=1
 | 
						|
--> |