| 
<?php
 /**
 * Naf_Validator example script
 *
 * @author Victor Bolshov <[email protected]>
 */
 
 if ($_SERVER['REQUEST_METHOD'] == 'POST')
 {
 // we are about to validate $_POST array
 
 // include libraries
 require_once dirname(__FILE__) . "/../Validator.php";
 require_once dirname(__FILE__) . "/../Validator/Result.php";
 
 // create validator instance
 $validator = new Naf_Validator();
 
 // create rules.
 // note the chain-calls: Naf_Validator's add*() methods support "fluent interfaces",
 // so you do not need to write it that way:
 // $validator->addRequired(...);
 // $validator->addIntegerRule(...); etc
 $validator->addRequired('author', "Author nickname is required")
 ->addRequired('text', "Comment text is required")
 ->addStringRule('author', "Author nickname must be a string")
 ->addStringRule('text', "Comment text must be a string");
 
 // now let's get the validation result.
 // note: Naf_Validator->check() returns an instance of Naf_Validator_Result!
 $result = $validator->check($_POST);
 
 }
 
 ?>
 <html>
 <head>
 <title>Naf_Validator example script</title>
 </head>
 <body>
 <?php if (isset($result)) : ?>
 <ul style="border-bottom:1px solid black;">
 <li>Validation passed: <?php var_export($result->ok()); ?></li>
 <li>Collected errors: <?php var_export($result->getErrorList()); ?></li>
 <li>Filtered data: <?php var_export($result->export()); ?></li>
 </ul>
 <?php endif; ?>
 
 <h3>Example comment form</h3>
 
 <form method="post" action="">
 
 <label>Nickname</label>
 <input type="text" name="text" />
 <br />
 
 <label>Comment</label>
 <input type="text" name="author" />
 <br />
 
 <input type="submit" />
 
 </form>
 
 </body>
 </html>
 |