Validação de formulários utilizando Javascript



Documentos relacionados
Por uma internet mais criativa e dinâmica

Exercícios Práticos de HTML e JavaScript. <FORM ACTION="mailto:teste@gmail.com" METHOD="POST" ENCTYPE="text/plain" NAME="cadastro">

Basicamente iremos precisar de uma base de dados na qual iremos armazenar os registros feitos pelos vistantes: Vamos armazenar os seguintes dados:

JavaScript: Validação de Formulários. Prof. Ivanilton Polato

INTRODUÇÃO AO DESENVOLVIMENTO WEB

FORMULÁRIOS HTML (FORMS) E ENTRADAS DE DADOS (INPUT)

Os componentes de um formulário são: Form, Input, Select e AreaText

Introdução à Tecnologia Web

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

Curso De PHP. Aula 4. Formulários. Cookies. Session. Mail

0,5 pelo negrito das palavras ID, Nome, e Analisar em outro momento.

<script language="javascript1.2" src="

if( document.dados.tx_ .value=="" document.dados.tx_ .value.indexof('.

SIMULADOS & TUTORIAIS

JavaScript (Funções, Eventos e Manipulação de Formulários)

Prof Evandro Manara Miletto. parte 2

Programando em PHP. Conceitos Básicos

Colégio da Policia Militar do Estado do Tocantins. HTML5 e CSS3 Formulários Prof. Gleison Batista de Sousa

COMO FUNCIONA UM FORMULÁRIO

Programação para Internet I

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL

Programação web Prof. Wladimir

Dicas para Javascript (parte2) 21 - IMPEDIR DIGITAÇÃO DE CARACTERES NÃOO NUMÉRICOS

Conteúdo. DHTML tópicos Hamilton Lima

Vamos criar nosso formulário, vou utilizar aqui como exemplo cinco campos para upload:

Programação Web Prof. Wladimir

Programação Web Prof. Wladimir

Aula 05 HTML FORMULÁRIOS Prof. Daniela Pires Sumário

O código acima descreve o formulário com uma caixa de texto e dois botões

indica o nome do campo pelo qual podemos acessar.

6. Introdução à Linguagem PHP

CONSTRUÇÃO DE BLOG COM O BLOGGER

Edição de Setembro. Validação formulários com PHP. ... revistamensal de programação Open Source

PLANNER CONSULTORIA E SISTEMAS

Ajax Asynchronous JavaScript and Xml


Formulários em HTML - O que são e para que servem

Programação para Internet I

English Português. By erickalves 25 Julho, :08. Devido à política (#) de segurança. Encontrar Blogs Crie o seu blog de graça Ganhe prêmios

Formulário (Send & Recieve) Prof. Celso H. Masotti

José Janeiro (Nº2467) Trabalho prático: HTML, CSS, Javascript. EmpregoWeb-Registo de pessoas

Faculdades Network Bacharelado em Sistemas de Informação Tópicos Avançados. Aulas 25 e 26 Exemplo de Aplicação usando JSP e MySQL

Quando tiver tudo preenchido, pressione o botão. Abre outro formulário, que deverá preencher, pressionando no final do. Figura 1

Cálculo Remoto de Preços e Prazos de Encomendas

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

HTML (Hyper Text Markup Language) É a linguagem com que se escrevem as páginas web;

PROGRAMAÇÃO PARA INTERNET. Fonte: Raul Paradeda

Ferramentas para Multimídia e Internet

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] )

MANUAL DE BOAS PRÁTICAS

<link rel="stylesheet" type="text/css" href="imagens.css" />

Web Design Aula 09: Formulários

Linguagem de. Aula 06. Profa Cristiane Koehler

PROGRAMAÇÃO WEB DO LADO DO CLIENTE

MANUAL DE BOAS PRÁTICAS

1) Crie uma nova página chamada Exercício.html e deixe-a com o seguinte layout:

FORMULÁRIOS ACESSÍVEIS

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

GUIA PHP com MYSQL Autor: Everton Mendes Messias

Mais sobre uso de formulários Site sem Ajax

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br Escola CDI de Videira

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

Primeiro Passo. Na sequência, surgirá a tela de Login, onde você poderá realizar uma das seguintes tarefas:

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos.

Tecnologias para apresentação de dados - HTML. Aécio Costa

Capítulo 4. Programação em ASP

SISTEMA GERENCIAMENTO DE PRODUTOS PHP E MySQL 1. APRESENTAÇÃO

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

Sistema de Gerenciamento Remoto

HTML 5 + CSS APRESENTANDO O CSS ESTILOS LOCAIS

WINCODE SOFTWARE E CONTABILIDADE S.A. MyEnsino Manual da Área Reservada de Professores

Criando um script simples

ATENÇÃO! É importante a leitura detalhada do Manual do Candidato para conhecer as normas do Processo de Ingresso.

HTML -- Criação de Home Page

Nota de Aplicação. Relatório em HTML no Vijeo Citect 1.0. Suporte Técnico Brasil. Versão:

APOSTILA. Curso de HTML com PHP HTML. Pablo Dapont

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

HTML: Listas, Tabelas e Formulários CST Sistemas para Internet

FMH Mestrado Gestão do Desporto Sistemas de Informação

Altere a cor de fundo Altere a cor do texto Utilize meta tags e direcione a página para um site qualquer

Manual do Instar Mail v2.0

TML 2.3 MANUAL DO PROGRAMA DE ENVIO DE TML 2.3 Tela 1 - Início Apenas apresentação do Programa

Nenhuma função possui parâmetro direto, apenas passados por POST.

WF Processos. Manual de Instruções

Antes de começar tens que saber o que é o hi5. O hi5 é um conjunto de páginas pessoais em que o utilizador se expõe a uma comunidade virtual.

Passo a Passo: Reiniciar Senha do Contribuinte na Internet

PHP: Formulários e upload de múltiplos arquivos Por Alfred Reinold Baudisch 28 de fevereiro de 2006.

Dicas para Javascript (parte1) <style TYPE="text/css"><!--a.menu {color:000000;}a.menu:hover {color:cc0000;}-- ></style>

MANUAL DO USUÁRIO PORTAL DO PROFESSOR

Sistema de Chamados Protega

Manual 2010 Webmaster

Interface Web services

Tabelas Div Span Frames Formulários

Tutorial para envio de comunicados e SMS

Transcrição:

Validação de formulários utilizando Javascript A validação de formulários é um dos usos mais comuns na programação Javascript. A validação de dados por meio da programação Javascript é muito fácil e rápida por que a verificação é feita no browser, sem necessitar ir até o servidor para transmitir dados. A validação é feita para não haver inconsistência de dados quando forem enviados para a base de dados. Uma checagem no servidor seria necessário no caso do Javascript estar desligado ou se, de alguma maneira, alguém tentar driblar a validação de forma maliciosa ou por engano. Para a maioria das pessoas a validação Javascript consegue economizar muito tempo. Para podermos trabalhar com a validação de formulário, foi criado um formulário padrão para podermos testar. A figura abaixo será o nosso exemplo: Com uma noção de onde pretendemos chegar vamos construir o nosso formulário baseado na imagem acima: Exemplo:

<form name="cadastro" action="teste.php" method="post" onsubmit="return validaform()"> <table width="40%" border="1" cellpadding="5" cellspacing="0" bordercolor="#000000"> <td>nome:</td> <td><input name="nome" type="text"></td> <td>user:</td> <td><input name="user" type="text"></td> <td>senha:</td> <td><input name="senha" type="password"></td> <td>email:</td> <td><input name="email" type="text"> (xxx@xx.xx)</td> <td>telefone:</td> <td><input name="telefone" type="text"></td> <td>data de nascimento:</td> <td><input name="nasce" type="text"> (dd/mm/yyyy)</td> <td>sexo :</td> <td> <input name="sexo[]" type="radio" value="masculino" id="sexo"> Masculino <input name="sexo[]" type="radio" value="feminino" id="sexo"> Feminino </td> <td colspan="2"> <div align="right"> <input name="enviar" type="submit" value="enviar"> </div> </td> </table> </form> O codigo HTML é uma estrutura de tabela com um formulário, tudo bem simples. Basta apenas prestar atenção para os nomes das caixas de entradas e dos botões radio bos para não ter problemas na hora da programação. No formulário acima, o evento onsubmit chama uma função chamada validaform que será responsável pela validação dos dados do formulário. Se os dados estiverem corretos retornará

true e o formulário será enviado. Caso contrário uma mensagem será mostrada determinando o local do erro. Com o formulário criado agora vamos partir para o desenvolvimento do código. Neste formulário será feita a checagem de seis caixas de entrada de dados e de um radio box. Para validação das as caixas de entradas é feita uma verifição se foi digitado algum valor. Para o campo e-mail a verificação é mais elaborada para saber se é um endereço de email válido. Para o campo telefone, só são aceito números. Para o campo Data de nascimento é verificado se a data esta correta com o padrão estabelecido. Para o campo Sexo é verificao se algum valor foi selecionado. Exemplo (Ao final desta matéria temos o link para visualização do resultado final): 1 function validaform(){ 2 d = document.cadastro; 3 //validar nome 4 if (d.nome.value == ""){ 5 alert("o campo " + d.nome.name + " deve ser preenchido!"); 6 d.nome.focus(); 7 8 9 //validar user 10 if (d.user.value == ""){ 11 alert("o campo " + d.user.name + " deve ser preenchido!"); 12 d.user.focus(); 13 14 15 //validar senha 16 if (d.senha.value == ""){ 17 alert("o campo " + d.senha.name + " deve ser preenchido!"); 18 d.senha.focus(); 19 20 21 //validar email 22 if (d.email.value == ""){ 23 alert("o campo " + d.email.name + " deve ser preenchido!"); 24 d.email.focus(); 25 26 27 //validar email(verificao de endereco eletrônico) 28 parte1 = d.email.value.indexof("@"); 29 parte2 = d.email.value.indexof("."); 30 parte3 = d.email.value.length; 31 if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) { 32 alert ("O campo " + d.email.name + " deve ser conter um endereco eletronico!"); 33 d.email.focus(); 34 35

36 //validar telefone 37 if (d.telefone.value == ""){ 38 alert ("O campo " + d.telefone.name + " deve ser preenchido!"); 39 d.telefone.focus(); 40 41 42 //validar telefone(verificacao se contem apenas numeros) 43 if (isnan(d.telefone.value)){ 44 alert ("O campo " + d.telefone.name + " deve conter apenas numeros!"); 45 d.telefone.focus(); 46 47 48 //validar data de nascimento 49 erro=0; 50 hoje = new Date(); 51 anoatual = hoje.getfullyear(); 52 barras = d.nasce.value.split("/"); 53 if (barras.length == 3){ 54 dia = barras[0]; 55 mes = barras[1]; 56 ano = barras[2]; 57 resultado = (!isnan(dia) && (dia > 0) && (dia < 32)) && (!isnan(mes) && (mes > 0) && (mes < 13)) && (!isnan(ano) && (ano.length == 4) && (ano <= anoatual && ano >= 1900)); 58 if (!resultado) { 59 alert("formato de data invalido!"); 60 d.nasce.focus(); 61 62 63 else { 64 alert("formato de data invalido!"); 65 d.nasce.focus(); 66 67 68 //validar sexo 69 if (!d.sexo[0].checked &&!d.sexo[1].checked) { 70 alert("escolha o sexo!") 71 72 73 return true; 74 Linha 1 Declaração da função responsável pela validação dos dados do formulário. Linha 2 Declaração de uma variável para economizar tempo e prováveis erros de digitação. Linha 4 Verificação se foi digitado algum valor para o campo nome. Se retornar falso é Linha 10 Verificação se foi digitado algum valor para o campo user. Se retornar falso é

Linha 16 Verificação se foi digitado algum valor para o campo senha. Se retornar falso é Linha 22 Verificação se foi digitado algum valor para o campo email. Se retornar falso é Linha 28 Declaração de uma variável que armazenara a posição do caractere @ na caixa de entrada email. Linha 29 Declaração de uma variável que armazenara a posição do caractere. na caixa de entrada email. Linha 30 Declaração de uma variável que armazenara a quantidade de caracteres digitados na caixa de entrada email. Linha 31 Estrutura condicional para verificação se o caractere @ está no mínimo depois de três letras, o caractere. está no mínimo depois de seis e se foi digitado no mínimo 9 letras. Se retornar falso, é enviado uma mensagem de erro e a caixa de entrada recebe o foco para se feita a correção. Linha 37 - Verificação se foi digitado algum valor para o campo telefone. Se retornar falso é Linha 43 - Verificação se o valor digitado no campo telefone possui apenas números. Se retornar falso é enviado uma mensagem de erro e a caixa de entrada recebe o foco para se feita a correção. Linha 50 Declaração de uma variável que armazena uma nova Data. Linha 51 - Declaração de uma variável que armazena o valor do ano no formato completo com 4 caracteres. Linha 52 Declaração de uma variável que separa o valor da caixa de entrada referente a data de nascimento e coloca em uma matriz, a / é utilizada para separar os valores entre elas, é suposto ter 3 valores referente a dia, mês e ano respectivamente. Linha 53 - Estrutura condicional para verificação se tem 3 valores para a matriz criada. Se retornar falso é enviado uma mensagem de erro e a caixa de entrada recebe o foco para se feita a correção. Linha 54 - Declaração de uma variável que recebe o primeiro valor da matriz, valor esse referente ao dia. Linha 55 - Declaração de uma variável que recebe o segundo valor da matriz, valor esse referente ao mês. Linha 56 - Declaração de uma variável que recebe o terceiro valor da matriz, valor esse referente ao ano completo com 4 caracteres. Linha 57 - Declaração de uma variável que faz a verificação das variáveis criadas anteriormente referente a dia, mês e ano, é feita uma checagem se os valores são números e se estão no padrão estabelecido.

Linha 58 - Estrutura condicional para checagem se o resultado da verificação dos dados digitados. Se retornar falso é é enviado uma mensagem de erro e a caixa de entrada recebe o foco para se feita a correção. Linha 69 - Verificação se foi selecionado algum valor referente ao sexo. Se retornar falso é Linha 73 Se todos os valores foram digitados corretamente a função vai retornar true e o formulário será enviado. Sempre lembrando que essa validação é boa, mas pode ser feito muito mais coisas para aprimorar, até mesmo trabalhar com programação orientada a objeto com o intuito de criar métodos que façam a análise dos dados. * Artigo de Thiago Prado publicado no site imasters

Código Fonte <html> <head> <title>valida form</title> <style> body, p, div, td, input, select, textarea { font-family: verdana,arial,helvetica; font-size:10px; color:#27364d; text-decoration: none; input,textarea { @if (is.ie) { color: #efefef; background-color:#efefef; border: 1px solid #060606 ; /*border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; */ textarea { overflow:auto </style> <script language="javascript"> function validaform(){ //validar nome d = document.cadastro; if (d.nome.value == ""){ alert("o campo " + d.nome.name + " deve ser preenchido!"); d.nome.focus(); //validar user if (d.user.value == ""){ alert("o campo " + d.user.name + " deve ser preenchido!"); d.user.focus(); //validar senha if (d.senha.value == ""){ alert("o campo " + d.senha.name + " deve ser preenchido!"); d.senha.focus(); //validar email if (d.email.value == ""){ alert("o campo " + d.email.name + " deve ser preenchido!"); d.email.focus(); //validar email(verificao de endereco eletronico) parte1 = d.email.value.indexof("@"); parte2 = d.email.value.indexof("."); parte3 = d.email.value.length; if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) { alert("o campo " + d.email.name + " deve ser conter um endereco eletronico!"); d.email.focus(); //validar telefone if (d.telefone.value == ""){ alert("o campo " + d.telefone.name + " deve ser preenchido!"); d.telefone.focus(); //validar telefone(verificacao se contem apenas numeros) if (isnan(d.telefone.value)){ alert("o campo " + d.telefone.name + " deve conter apenas numeros!"); d.telefone.focus(); //validar data de nascimento erro=0; hoje = new Date(); anoatual = hoje.getfullyear();

barras = d.nasce.value.split("/"); if (barras.length == 3){ dia = barras[0]; mes = barras[1]; ano = barras[2]; resultado = (!isnan(dia) && (dia > 0) && (dia < 32)) && (!isnan(mes) && (mes > 0) && (mes < 13)) && (!isnan(ano) && (ano.length == 4) && (ano <= anoatual && ano >= 1900)); if (!resultado) { alert("formato de data invalido!"); d.nasce.focus(); else { alert("formato de data invalido!"); d.nasce.focus(); //validar sexo if (!d.sexo[0].checked &&!d.sexo[1].checked) { alert("escolha o sexo!") return true; </script> </head> <body leftmargin="10" topmargin="10" marginwidth="10" marginheight="10"> <h1>valida FORM</h1> <form name="cadastro" action="teste.php" method="post" onsubmit="return validaform()"> <table width="40%" border="1" cellpadding="5" cellspacing="0" bordercolor="#000000"> <td>nome:</td> <td><input name="nome" type="text"></td> <td>user:</td> <td><input name="user" type="text"></td> <td>senha:</td> <td><input name="senha" type="password"></td> <td>email:</td> <td><input name="email" type="text"> (xxx@xx.xx)</td> <td>telefone:</td> <td><input name="telefone" type="text"></td> <td>data de nascimento:</td> <td><input name="nasce" type="text"> (dd/mm/yyyy)</td> <td>sexo :</td> <td> <input name="sexo[]" type="radio" value="masculino" id="sexo"> Masculino <input name="sexo[]" type="radio" value="feminino" id="sexo"> Feminino </td> <td colspan="2"> <div align="right"> <input name="enviar" type="submit" value="enviar"> </div> </td> </table> </form> </body> </html>