HTML_QuickForm::addFormRule() -- Adds a global validation rule
Description
This should be used when you want to add a rule involving several fields or if you want to use some completely custom validation for your form.
The rule function/method should return TRUE in case of successful validation and array('element name' => 'error') when there were errors.
Parameter
- mixed
$rule
A valid callback
Throws
Table 31-1. Possible PEAR_Error values
Error code | Error message | Reason | Solution |
---|
QUICKFORM_INVALID_RULE | Callback function does not exist in HTML_QuickForm::addFormRule() | Tried to pass a name of a non-existant function as a callback | Check spelling |
Note
since 3.1
This function can not be called
statically.
Example
Example 31-1. Using addFormRule() <?php
require_once ('HTML/QuickForm.php');
$form = new HTML_QuickForm();
// the function checks whether the passwords are the same
function cmpPass($fields)
{
if (strlen($fields['passwd1']) && strlen($fields['passwd2']) &&
$fields['passwd1'] != $fields['passwd2']) {
return array('passwd1' => 'Passwords are not the same');
}
return true;
}
$form->addElement('password', 'passwd1', 'Enter password');
$form->addElement('password', 'passwd2', 'Confirm password');
$form->addFormRule('cmpPass');
?> |
|