Tratamento de erros do formulário
Eu tenho um formulário que chama um arquivo php para tratar os dados.
O que eu quero é que quando o tratamento indicar erro nos dados inseridos, o formulário volte com as correções necessárias para se fazer.
formulhario:
<form method="post" action="controle/cadastroUsuario.class.php">
<input type="hidden" name="cadastraUsuario" value="1" />
<label>Nome: </label> <input type="text" name="usuario_nome" /><br />
<label>Sobrenome: </label> <input type="text" name="usuario_sobrenome" /><br />
<label>Data de nascimento: </label> <input type="text" id="usuario_nascimento" name="usuario_nascimento" /><br />
<label>CPF: </label> <input type="text" name="usuario_cpf" /><br />
<input type="submit" src="" value="Enviar" />
</form>
tratamento:
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['cadastraUsuario'] == '1') {
$usuario_nome = $_POST['usuario_nome'];
$usuario_sobreNome = $_POST['usuario_sobrenome'];
$usuario_nomeCompleto = "$usuario_nome"." "."$usuario_sobreNome";
$usuario_nascimento = $_POST['usuario_nascimento'];
$usuario_cpf = $_POST['usuario_cpf'];
}
}
$cadastroUsuario = new cadastroUsuario;
$cadastroUsuario->_verificaNome($usuario_nomeCompleto);
$cadastroUsuario->_verificaIdade($usuario_nascimento);
$cadastroUsuario->_validaCPF($usuario_cpf);
class cadastroUsuario {
var $status_cpf = 1;
var $multiplicacao = 0;
var $soma = 0;
var $i;
var $jp = 10;
var $js = 11;
function _verificaNome($usuario_nomeCompleto) {
if(strlen($usuario_nomeCompleto) > 7) {
if(!is_numeric($usuario_nomeCompleto)) {
return false;
}
}
}
function _verificaIdade($usuario_nascimento) {
$dia = substr($usuario_nascimento, 0, -8);
$mes = substr($usuario_nascimento, 3, -5);
$ano = substr($usuario_nascimento, 6);
$anoAtual = date('Y');
$mesAtual = date('m');
$diaAtual = date('d');
if(($anoAtual - $ano) < 18) {
return false;
} else {
if($mes > $mesAtual) {
return false;
} else {
if($dia >= $diaAtual) {
return false;
} else {
return true;
}
}
}
}
function _validaCPF($usuario_cpf) {
if(is_numeric($usuario_cpf)) {
if(strlen($usuario_cpf) == 11) {
for($this->i=0; $this->i<=11; $this->i++) {
if($usuario_cpf == '$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i'.'$this->i') {
$this->status_cpf = 0;
}
}
} else {
$this->status_cpf = 0;
}
} else {
$this->status_cpf = 0;
}
if($this->status_cpf != 0) {
for($this->i=0; $this->i<=8; $this->i++) {
$this->multiplicacao = $usuario_cpf[$this->i] * $this->jp;
$this->soma = $this->soma + $this->multiplicacao;
$this->jp--;
}
$this->resto = $this->soma % 11;
if($this->resto < 2) {
$this->primeiroDigito = 0;
} else {
$this->primeiroDigito = 11 - $this->resto;
}
if($this->primeiroDigito != $usuario_cpf[9]) {
return false;
} else {
$this->soma = 0;
for($this->i=0; $this->i<=9; $this->i++) {
$this->multiplicacao = $usuario_cpf[$this->i] * $this->js;
$this->soma = $this->soma + $this->multiplicacao;
$this->js--;
}
$this->resto = $this->soma % 11;
if($this->resto < 2) {
$this->segundoDigito = 0;
} else {
$this->segundoDigito = 11 - $this->resto;
}
if($this->segundoDigito != $usuario_cpf[10]) {
return false;
} else {
return true;
}
}
} else {
return false;
}
}
}
?>Discussão (3)
Carregando comentários...