Validação de Formulários
Neste capítulo, é apresentado o exemplo de criação de um formulário que contém diferentes campos de entrada: campos de texto (text), radio button (radio), caixa de texto para textos maiores (textarea), botão para envio dos dados (submit), e um para limpar o formulário (reset). Os campos do formulário e as respectivas especificações são mostrados na tabela a seguir:
| Campo | Tipo | Requerido |
|---|---|---|
| Nome | text | Sim |
| CPF | text | Sim |
| text | Sim | |
| Site | text | Não |
| Observações | textarea | Não |
| Sexo | radio | Sim |
Campos de texto
Os campos Nome, Cpf, E-mail, Site são todos campos de texto definidos através do atributo type com valor text (type="text"). O campo Observações também é um campo de texto, porém é um textarea, que segue uma declaração diferente. O campo textarea permite múltiplas linhas e colunas. A seguir o código HTML para definição dos respectivos campos é apresentado.
Nome: <input type="text" name="txtNome">
CPF: <input tyé="text" name="txtCpf">
E-mail: <input type="text" name="txtEmail">
Site: <input type="text" name="txtSite">
Observações:<textarea name="textAreaObservacoes" rows="7" cols="40"> </textarea>
Campo para seleção exclusiva (radio)
O campo para escolha do sexo oferece duas opções possíveis: Masculino e Feminino. Para isso, é utilizado um campo do tipo radio, conforme código apresentado a seguir:
<input type="radio" name="radioSexo" value="Masculino"> Masculino
<input type="radio" name="radioSexo" value="Feminino"> Feminino
Se o usuário escolher a opção Feminino, a opção Masculino deverá estar desmarcada, e vice-versa. Para garantir esta escolha única, o nome de ambos os campos (Feminino e Masculino) devem ser o mesmo. Neste caso específico, o nome definido foi radioSexo.
Botões para ações no formulário
A qualquer momento, o usuário pode limpar o formulário ou enviar os dados para serem processados. Para isso, existem específicos botões: reset (limpar) e submit (submete). A seguir é apresentado o código HTML que os define:
<input type="submit" name="btnEnviar" value="Enviar">
<input type="reset" name="resetBtn" value="Limpar">
Código PHP para validação
Para que os dados possam ser validados, inicialmente deve-se definir todos os elementos apresentados anteriormente como elementos de um formulário. O método de envio dos dados no formulário deve ser POST. Depois disso, podemos passar para a etapa de codificação do código PHP que receberá os dados para verificação. A verificação que será realizada é a obrigatoriedade dos campos: Nome, Cpf, E-mail e Sexo. A seguir é apresentado um exemplo de codificação:
<?php
$nomeError=$cpfError=$emailError= $sexoError="";
if ($_SERVER["REQUEST_METHOD"]=="POST"){
if (empty($_POST["txtNome"])){
$nomeError = "Nome é obrigatório!";
}
if (empty($_POST["txtCpf"]))
$cpfError ="CPF é obrigatório!";
if (empty($_POST["txtEmail"]))
$emailError = "O e-mail é obrigatório1";
if (empty($_POST["radioSexo"]))
$sexoError = "O sexo é obrigatório1";
}
Dentre as instruções apresentadas no código anterior, destaca-se o condicional que verifica se o método de envio dos dados é POST. Caso seja, os passos subsequentes fazem verificações se os campos estão ou não vazios. Caso algum campo esteja vazio, uma variável específica recebe a mensagem de erro que será mostrada para o usuário.
O código PHP completo com o funcionamento do exemplo mostrado anteriormente, pode ser encontrado aqui.