Using HTML Quickform for Form Processing - Checkbox, Radio
(Page 6 of 13 )
The checkbox element produces an HTML <input type="checkbox"> tag. The value attribute of this input tag is always set to 1.
These are the valid arguments when creating a checkbox element:
- $elementName: The name attribute of the element’s <input> tag
- $elementLabel: The label of the element in the form
- $text: The display text
- $attributes: Arbitrary element attributes, as a string or an associative array It takes the following methods:
- setChecked(): Sets the checked attribute, which causes a check to be displayed inside the checkbox
- getChecked(): Gets the value of the checked attribute
- setText(): Sets the display text printed to the right of the checkbox
- getText(): Gets the display text printed to the right of the checkbox
The following is the sample usage:
$form->addElement('checkbox','redeye','Red Eye OK?',
'(Check if a late night flight is acceptable.)');
This is the sample HTML:
<input name="redeye" type="checkbox" value="1" id="qf_ca4d9a" /> <label for="qf_ca4d9a"<(Check if a late night flight is acceptable.) </label>
The for attribute of the <label< tag corresponds to the id attribute of the <input> tag. This ID value is generated internally by HTML_QuickForm.
If a checkbox is left unchecked in a submitted form, then an element with the name of the checkbox isn’t defined at all in the array of submitted form variables. If the checkbox is checked, then the element with the same name as the checkbox has a value of 1 in the array of submitted form variables.
radio
The radio element produces an HTML <input type="radio"> tag. Radio buttons are like checkboxes, but if you put multiple radio buttons with the same name in one form, the browser only lets one radio button be selected at a time.
These are the valid arguments when creating a radio element:
- $elementName: The name attribute of the element’s <input> tag
- $elementLabel: The label of the element in the form
- $text: The display text
- $value: The value attribute of the element’s <input> tag
- $attributes: Arbitrary element attributes, as a string or an associative array
The following is the sample usage:
$form->addElement('radio','when','Departure:','Depart in the morning','morning');
$form->addElement('radio','when',null,'Depart in the afternoon','afternoon');
$form->addElement('radio','when',null,'Depart in the evening','evening');
The following is the sample HTML:
<tr>
<td align="right" valign="top"><b>Departure:</b></td>
<td valign="top" align="left"><input name="when" value="morning"
type="radio" id="qf_27dde5" /><label for="qf_27dde5">Depart in the
morning</label></td>
</tr>
<tr>
<td align="right" valign="top"><b></b></td>
<td valign="top" align="left"><input name="when" value="afternoon"
type="radio" id="qf_2316ca" /><label for="qf_2316ca">Depart in the
afternoon</label></td>
</tr>
<tr>
<td align="right" valign="top"><b></b></td>
<td valign="top" align="left"><input name="when" value="evening"
type="radio" id="qf_f7bf3f" /><label for="qf_f7bf3f">Depart in the
evening</label></td>
</tr>
Each radio button <input> element has the same name but a different value. If the user chooses the Depart in the morning radio button, then the value of the when element of the submitted form variable array is "morning". If the user chooses the Depart in the afternoon or Depart in the evening radio buttons, the value of the submitted form variable is afternoon or evening, respectively.
This chapter is from Essential PHP Tools: Modules, Extensions, and Accelerators, by David Sklar, (Apress, 2004, ISBN: 1590592808). Check it out at your favorite bookstore today.
Buy this book now. |
Next: Submit, Reset, Button, Image >>
More Graphic Design Articles
More By Apress Publishing