void HTML_QuickForm::addFormRule (
mixed $rule
)
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.
$rule
A valid callback
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 |
since 3.1
This function can not be called statically.
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');
?>