{html_radios}

{html_radios}

{html_radios} is a custom function that creates html radio button group with provided data. It takes care of which item is selected by default as well. Required attributes are values and output, unless you use options instead. All output is XHTML compatible.

Attribute NameTypeRequiredDefaultDescription
namestringNoradioname of radio list
valuesarrayYes, unless using options attributen/aan array of values for radio buttons
outputarrayYes, unless using options attributen/aan array of output for radio buttons
selectedstringNoemptythe selected radio element
optionsassociative arrayYes, unless using values and outputn/aan associative array of values and output
separatorstringNoemptystring of text to separate each radio item

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

Example 8-12. {html_radios} : Example 1

<?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);

?>

Where template is:

{html_radios name="id" values=$cust_ids output=$cust_names
       selected=$customer_id separator="<br />"}

Example 8-13. {html_radios} : Example 2

<?php

$smarty
->assign('cust_radios', array(
                               
1000 => 'Joe Schmoe',
                               
1001 => 'Jack Smith',
                               
1002 => 'Jane Johnson',
                               
1003 => 'Charlie Brown'));
$smarty->assign('customer_id'1001);

?>

Where index.tpl is:

{html_radios name="id" options=$cust_radios selected=$customer_id separator="<br />"}

Both examples will output:

<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-14. {html_radios}- Database example (eg PEAR or ADODB):

<?php

$sql 
'select type_id, types from types order by type';
$smarty->assign('types',$db->getAssoc($sql));

$sql 'select contact_id, name, email, type_id
        from contacts where contact_id='
.$contact_id;
$smarty->assign('contact',$db->getRow($sql));

?>

and the template:

{html_radios name="type" options=$types selected=$contact.type_id separator="<br />"}

See also {html_checkboxes} and {html_options}

© Copyright 2003-2023 www.php-editors.com. The ultimate PHP Editor and PHP IDE site.