ATENÇÃO
SE OS CARACTERES DO CHANGELOG ESTIVEREM MAL FORMATADOS, MUDE A CODIFICAÇÃO DO NAVEGADOR PARA UTF8.

FIREFOX: Exibir > Codificação > Unicode (UTF8)

-------

LEIA TODO O CHANGELOG E VEJA O EXEMPLO NO FINAL DESSA PÁGINA, POIS MUITA COISA FOI MUDADA DA VERSÃO 3.0.1 PARA A VERSÃO 4.0

-------

Classe PHP Validação versão 4.0

Métodos de validação disponíveis:
- obrigatorio
- numerico
- minCaracter
- maxCaracter
- email
- mac
- ip
- alfanumerico
- alfa
- mascara
- cpf

Total: 11 métodos

Método de agrupamento das mensagens de erros mais eficiente e com menos POG do que na versão anterior.

Padronização do idioma.


Para a construção dos métodos de validação a ideia é: 

Se satisfaz a regra então o método deve retornar TRUE.
Se NÃO satisfaz a regra então o método deve retornarFALSE.

Na versão anterior essa ideia não era seguida, alternando entre TRUE e FALSE até obter o resultado desejado. Agora é padronizado.

Método 'executar' mais enxuto.


Adicionado o método de validação MASCARA, que permite o usuário definir padrões para os campos input. 

Exemplo: Telefone deve ter o seguinte padrão: (999) 9999-9999
Logo a validação só será valida se houver uma entrada no padrão definido.

Mas não é apenas com números que padrões podem ser formados. Supondo um que você queira validar um código de matrícula de uma faculdade qualquer. O suposto padrão é AAA-9999. Logo a validação só será valida se houver uma entrada com 3 letras, um traço e 4 números.
O método MASCARA nos permite validar uma gama enorme de entradas.

Adiconado método de validação CPF. Neste caso a validação não é apenas para verificar se combina com um determinado padrão. O método ira verificar se os dois últimos valores do CPF entrado são validos. Isso é feito manipulando os 9 primeiros digitos do CPF digitado.

De uma forma geral a classe está mais LIMPA.

Abaixo deixo uma página com um exemplo de validação usando todos os métodos disponíveis.



---- COPIE DAQUI PRA BAIXO ----

<?php

if (!empty($_POST)) {

    include_once('../classes/Validacao.class.php');
    
    $validar = new Validacao();
    
    # Definindo as regras de validação para os campos
    $regras['nome']            = 'obrigatorio|alfa|minCaracter[3]';
    $regras['sobrenome']       = 'obrigatorio|alfa|minCaracter[3]';
    $regras['email']           = 'email';
    $regras['cpf']             = 'cpf';
    $regras['data_nascimento'] = 'obrigatorio|mascara[99/99/9999]';
    $regras['mac']             = 'mac';
    $regras['ip']              = 'ip';
    $regras['idade']           = 'numerico';
    $regras['data']            = 'obrigatorio|mascara[99/99/99]';
    
    $validar->setRegras($regras);
    
    # Definindo o nome dos campos para a mensagem de erro, caso exista
    # pois se o nome não for definido, o nome usado é o nome do input
    $campos['data_nascimento'] = "Data de Nascimento";
    $campos['mac']             = "MAC";
    $campos['ip']              = "IP";
    $campos['cpf']             = "CPF";
    $campos['email']           = 'E-mail';
    
    $validar->setCampos($campos);
    

    if ($validar->executar() === TRUE) {
    
        echo 'validado com sucesso';
    
    }

    $validar->mostrarErros();

}

?>

<form action="ValidacaoTestes.php" method="post">

    Nome            : <input type="text" name="nome" value="<?php echo $_POST['nome']; ?>" /> <br />
    Sobrenome       : <input type="text" name="sobrenome" value="<?php echo $_POST['sobrenome']; ?>" /> <br />
    E-mail          : <input type="text" name="email" value="<?php echo $_POST['email']; ?>" /> <br />
    Data Nascimento : <input type="text" name="data_nascimento" value="<?php echo $_POST['data_nascimento']; ?>" /> <br />
    CPF             : <input type="text" name="cpf" value="<?php echo $_POST['cpf']; ?>" /> <br />
    MAC             : <input type="text" name="mac" value="<?php echo $_POST['mac'] ?>" /><br />
    IP              : <input type="text" name="ip" value="<?php echo $_POST['ip'] ?>" /><br />
    Idade           : <input type="text" name="idade" value="<?php echo $_POST['idade']; ?>" /> <br />
    Data            : <input type="text" name="data" value="<?php echo $_POST['data']; ?>" /> <br />

<input type="submit" value="Validar" />
</form>

---- COPIE DAQUI PRA CIMA ----