html_checkboxes

Имя аттрибута Тип Обязателен По умолчанию Описание
name строка (string) Нет checkbox название списка флажков
values массив Да, если не указан аттрибут options n/a Массив значений для флажков
output массив Да, если не указан аттрибут options n/a массив названий флажков
checked строка (string) Нет пусто выбранный флажок
options ассоциативный массив Да, если не указаны аттрибуты values и output n/a Ассоциативнй массив значений и названий
separator строка (string) Нет пусто строка разделяющая каждый флажок

Пользовательская функция html_checkboxes генерирует группу HTML фложков по указанной информации. Также заботится об флажках, которые выбраны по умолчанию. параметры vslues и output обязательны, если не указан аттрибут options. Весь вывод совместим с XHTML.

Все параметры, которые не указаны в списке выводятся в виде пар name/value в каждом созданном тэге <input>.

Пример 8-6. html_checkboxes

index.php:

 require('Smarty.php.class');
 $smarty = new Smarty;
 $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);
 $smarty->display('index.tpl');


 index.tpl:

 {html_checkboxes values=$cust_ids checked=$customer_id output=$cust_names separator="<br />"}


 index.php:

 require('Smarty.php.class');
 $smarty = new Smarty;
 $smarty->assign('cust_checkboxes', array(
    1001 => 'Joe Schmoe',
    1002 => 'Jack Smith',
    1003 => 'Jane Johnson','Charlie Brown'));
 $smarty->assign('customer_id', 1001);
 $smarty->display('index.tpl');

 index.tpl:

 {html_checkboxes name="id" options=$cust_checkboxes checked=$customer_id separator="<br />"}


 OUTPUT: (both examples)

 <input type="checkbox" name="id[]" value="1000">Joe Schmoe<br />
 <input type="checkbox" name="id[]" value="1001" checked="checked"><br />
 <input type="checkbox" name="id[]" value="1002">Jane Johnson<br />
 <input type="checkbox" name="id[]" value="1003">Charlie Brown<br />