16
respostas

como validar email e senha em javascript

Preciso validar email e senha em um formulário javascript, porém não faço ideia de como fazer isso, pois até agora só tive uma aula e o professor deixou para nós mesmo fazemos este trabalho sozinho para aprender, alguém pode me ensinar ou dar um dicas por favor ? preciso atender essas especificações no texto abaixo. `

Email S 100/Alfa Deve possuir pelo menos um caractere @(arroba) e um caractere . (ponto) @ não pode ser o primeiro caractere . não pode ser o ultimo caractere @ e o . não podem estar juntos

Senha S 20/Alfa Deve ser idêntica ao conteúdo do campo Confirma Senha Mínimo 6 e máximo 8 caracteres No mínimo 1 maiúsculo, 1 letra, 1 número e 1 especial

Confirma Senha S 20/Alfa Deve ser idêntica ao conteúdo do campoSenha Mínimo 6 e máximo 8 caracteres No mínimo 1 maiúsculo, 1 letra, 1 número e 1 especial

`

16 respostas

Oi Rodrigo tudo bem?

Isso é assunto de um curso inteiro. Dá uma olhada nesse curso que ensina como fazer isso https://cursos.alura.com.br/course/expressoes-regulares

Se tiver com pressa aprenda o essencial e jogo no google, expressão regular para validar e-mail, expressão regular para validar senha que vem um monte.

Porém se tiver com mais pressa ainda sobe seu projeto no github que implemento para você assim que der. Aí você vê e aprende.

Para validar a senha, aqui tem um exemplo:

https://stackoverflow.com/questions/17152677/javascript-validation-for-a-complex-password

Para validar o e-mail, aqui tem uma sugestão:

<script type="text/javascript">
function ValidarEmail (email) {
  var emailPattern =  /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
   return emailPattern.test(email); 
}
console.log('teste');
console.log(ValidarEmail('teste@teste@teste.com'));
console.log(ValidarEmail('teste@teste.com'));
console.log(ValidarEmail('teste@.teste.com.br'));

</script>

Estou com bastante pressa, pois este trabalho é para dia 25, tire outra dúvida minha algum de vocês, como faço pra validar data de nascimento ? eu apanhei bastante pra conseguir validar somente nome com 30 caracteres, imagina pra validar data então, vocês pode me ajudar a como validar, por favor!

Oi Rodrigo tudo bem?

Dá uma olhada nesse link de expressão regular

https://www.regextester.com/99555

^([0-2][0-9]|(3)[0-1])(\/)(((0)[0-9])|((1)[0-2]))(\/)\d{4}$

Obrigado pela ajuda mano

mano não consegui entender direito, meu conhecimento é muito básico ainda em web, sou iniciante

Qual parte você não conseguiu entender? A parte da expressão regular ou como colocar ela no código?

Você chegou a fazer aquele curso de https://cursos.alura.com.br/course/expressoes-regulares ?

Ainda não mano, eu prefiro entregar o formulário amanhã, eu acho que irei perder algumas horas vendo vídeos, ou você achar que eu vendo este curso vou conseguir validar o email tranquilo ?

Não tem como saber o quanto tempo vai demorar. Mas com certeza é mais rápido do que se eu explicar pelo fórum. Porque não é uma dúvida específica mas sim teria que te passar muita matéria que é a mesma do curso. Para validar data pode usar o input type date também. E também pode usar o input type email também. Você pode consultar a sintaxe no site mdn (Mozilla deveveloper).

Relendo a sua pergunta inicial não creio que o professor vá aceitar usar o input apenas sem javascript . Mas a título de curiosidade e futura referência.

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/email

https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/Input/data

https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/Input/password

Eu também temo se fizer o exercício para você sua nota seja invalidada (acho que pela ética nesse caso nem posso fazer rsrsrsr) já que é um projeto de faculdade.

eu quero entender a lógica de como validar e-mail, eu não conseguir entender ainda

Vamos lá, nem sei por onde começar. Rsrsrs

Vou tentar explicar aos poucos. E vou fazendo perguntas no final para checar o aprendizado.

Você quer que eu explique a resposta dada pelo Daniel sobre email, certo?

isso mesmo, como sou iniciante eu não consegui entender completamente a lógica, eu quero entender para poder explicar depois

como eu faço para criar expressão regular para senha ?

Primeiro vou dar uma introdução básica sobre Expressões Regulares e você me fala se entendeu.

Expressões regulares ou regex ou regexp são expressões que dão uma forma concisa e flexível de identificar cadeias de caracteres de interesse, como caracteres particulares, palavras ou padrões de caracteres. Expressões regulares são escritas numa linguagem formal que pode ser interpretada por um processador de expressão regular, um programa que serve um gerador de analisador sintático ou examina o texto e identifica as partes que casam com a especificação dada.

No caso do Javascript ele já vem nativamente com interpretador de expressões regulares.

Até aqui compreendeu?

Dá uma lida nesse artigo também, mas só por curiosidade que tem muito conteúdo e não é necessário entender todo ele por hora. https://pt.wikipedia.org/wiki/Express%C3%A3o_regular

consegui entender sim, valeu muito obrigado pela ajuda