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