98 lines
2.1 KiB
PHP
98 lines
2.1 KiB
PHP
<?php
|
|
/*
|
|
* This example serves to demonstrate how to validate an input depending
|
|
* on the state of another input.
|
|
*
|
|
* @(#) $Id: test_dependent_validation.php,v 1.1 2007/06/02 08:37:21 mlemos Exp $
|
|
*
|
|
*/
|
|
|
|
require('forms.php');
|
|
|
|
$form=new form_class;
|
|
$form->NAME='dependent_validation_form';
|
|
$form->METHOD='POST';
|
|
$form->ACTION='';
|
|
$form->InvalidCLASS='invalid';
|
|
$form->ShowAllErrors=0;
|
|
$form->debug='trigger_error';
|
|
$form->AddInput(array(
|
|
'TYPE'=>'checkbox',
|
|
'ID'=>'condition',
|
|
'NAME'=>'condition',
|
|
'CHECKED'=>1,
|
|
'LABEL'=>'<u>V</u>alidate',
|
|
'ACCESSKEY'=>'V'
|
|
));
|
|
$form->AddInput(array(
|
|
'TYPE'=>'text',
|
|
'ID'=>'dependent',
|
|
'NAME'=>'dependent',
|
|
'LABEL'=>'<u>D</u>ependent',
|
|
'ACCESSKEY'=>'D',
|
|
'ValidateAsNotEmpty'=>1,
|
|
'ValidationErrorMessage'=>'It was not entered a value in the dependent field.',
|
|
'DependentValidation'=>'condition'
|
|
));
|
|
|
|
$form->AddInput(array(
|
|
'TYPE'=>'submit',
|
|
'VALUE'=>'Submit',
|
|
'NAME'=>'doit'
|
|
));
|
|
|
|
$form->LoadInputValues($form->WasSubmitted('doit'));
|
|
$verify=array();
|
|
if($form->WasSubmitted('doit'))
|
|
{
|
|
if(($error_message=$form->Validate($verify))=='')
|
|
$doit=1;
|
|
else
|
|
{
|
|
$doit=0;
|
|
$error_message=HtmlEntities($error_message);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$error_message='';
|
|
$doit=0;
|
|
}
|
|
|
|
if(!$doit)
|
|
$form->ConnectFormToInput('dependent', 'ONLOAD', 'Focus', array());
|
|
|
|
$onload=HtmlSpecialChars($form->PageLoad());
|
|
|
|
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<title>Test for Manuel Lemos' PHP form class for dependent validation</title>
|
|
<style type="text/css"><!--
|
|
.invalid { border-color: #ff0000; background-color: #ffcccc; }
|
|
// --></style>
|
|
</head>
|
|
<body onload="<?php echo $onload; ?>" bgcolor="#cccccc">
|
|
<center><h1>Test for Manuel Lemos' PHP form class for dependent validation</h1></center>
|
|
<hr />
|
|
<?php
|
|
if($doit)
|
|
{
|
|
?>
|
|
<center><h2>OK</h2></center>
|
|
<?php
|
|
}
|
|
else
|
|
{
|
|
$form->StartLayoutCapture();
|
|
$title='Form dependent validation test';
|
|
$body_template='form_dependent_validation.html.php';
|
|
include('templates/form_frame.html.php');
|
|
$form->EndLayoutCapture();
|
|
|
|
$form->DisplayOutput();
|
|
}
|
|
?>
|
|
<hr />
|
|
</body>
|
|
</html>
|