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