Sei sulla pagina 1di 13

Biblioteca de Funes Validao

Ademir Mazer Jr
ademir@winponta.com.br

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Centralizao de cdigo Organizao de cdigo Produtividade Reuso de cdigo Facilidade de trabalho em grupo

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Organizando uma biblioteca de funes Ex:

Criar uma pasta chamada lib Library significa biblioteca em ingls Guardar na pasta lib todos os arquios que contm funes genricas para uso nos sistemas

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Biblioteca de funes para validao de entrada de dados Ex:

Criar um arquivo validacao_entradas.php Guardar este arquivo na pasta lib

chamado

Inserir nos arquivos onde ser necessrio utilizar as funes de validao de entrada de dados Criar neste arquivo as funes da forma mais genrica possvel

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Funes para validao de entrada de dados Crie as funes de forma genrica Defina os argumentos que cada funo deve receber para realizar os testes de acordo com a validao necessria Retorne o valor TRUE sempre que a validao estiver ok e FALSE quando a validao falhar

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Funo para validao de campo obrigatrio

function validaObrigatorio ( $valor ) { If ( ! isset($valor) || empty($valor) ) { Return false; } else { Return true; } }

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Chamando a funo para validao de campo obrigatrio

Ex: em um arquivo que recebe o POST de um formulrio onde o campo nome obrigatrio
Include 'lib/validacao_entrada.php'; If ( ! validaObrigatorio($_POST['nome']) ) { Echo 'Erro: nome obrigatrio!'; }

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Funo para validao de tamanho mnimo e mximo de caracteres em um campo

function validaTamanho ( $valor, $min, $max ) { If ( empty($valor) ) { Return null; // no testa nada se no tem valor } else { If (isnumeric($min) { // se no numrico no testa If (strlen(trim($valor)) >= $min) { Return true; } else { Return false; } } } ...
2012 Ademir Mazer Jr ademir@winponta.com.br http://www.winponta.com.br/moodle

Biblioteca de Funes

continuao
If (isnumeric($max) { if (strlen(trim($valor)) <= $max) { Return true; } else { Return false; } } }

...

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Chamando a funo para validao de tamanho de campo Ex: em um arquivo que recebe o POST de um formulrio onde o campo nome tem tamanho mnimo 3 e mximo 50 e tambm obrigatrio

Include 'lib/validacao_entrada.php'; If ( ! validaObrigatorio($_POST['nome']) ) { Echo 'Erro: nome obrigatrio!'; } else { If ( ! validaTamanho($_POST['nome'],3,50) ) { Echo 'Erro: nome deve ter no mnimo 3 e no mximo 50 caracteres!'; }
} 2012 Ademir Mazer Jr ademir@winponta.com.br http://www.winponta.com.br/moodle

Biblioteca de Funes

Ex: testando o campo telefone fixo que tem tamanho mnimo 14 e mximo 14 mas no obrigatrio

... If ( ! validaTamanho($_POST['telefone_fixo'],14,14) ) { Echo 'Erro: Tamanho do telefone 14!'; }

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Ex: testando o campo observao que tem tamanho mximo 250, no tem tamanho mnimo e no obrigatrio

... If ( ! validaTamanho($_POST['observacao'],null,250) ) { Echo 'Erro: caracteres!'; } Tamanho da observao no mximo 250

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Biblioteca de Funes

Dica:

Crie sua bibliotecade funes medida que vai construindo seu sistema e percebe a necessidade de reutilizar determinado cdigo Organize os arquivos por contexto Ex:

validacao_entrada.php deveria receber somente funes de validao de entrada de dados banco_dados.php deveria receber somente funes relacionadas ao trabalho com banco de dados Etc ...

2012 Ademir Mazer Jr

ademir@winponta.com.br

http://www.winponta.com.br/moodle

Potrebbero piacerti anche