html_checkboxes

Attribute NameTypeRequiredDefaultDescription
namestringNocheckboxname of checkbox list
valuesarrayYes, unless using options attributen/aan array of values for checkbox buttons
outputarrayYes, unless using options attributen/aan array of output for checkbox buttons
checkedstringNoemptythe checked checkbox element
optionsassociative arrayYes, unless using values and outputn/aan associative array of values and output
separatorstringNoemptystring of text to separate each checkbox item

html_checkboxes is a custom function that creates an html checkbox group with provided data. It takes care of which item(s) are selected by default as well. Required attributes are values and output, unless you use options instead. All output is XHTML compatible.

All parameters that are not in the list above are printed as name/value-pairs inside each of the created <input>-tags.

Example 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','Carlie Brown'));
$smarty->assign('customer_id', 1001);
$smarty->display('index.tpl');

index.tpl:

{html_checkboxes name="id" checkboxes=$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 />