[RESOLVIDO] Validação client-side ou server-side para campos obrigatórios?

10 respostas
D

Boa galera,

Como vocês tem feito as validações de campos obrigatórios?
Para casos de client-side(javascript), essas validações são no onblur do campo ou no submit do form?

Fico na dúvida por questões de usabilidade o qual modelo usar.

10 Respostas

R

Opa, eu costumo fazer estas validações no cliente, vc evita que o seu servidor seja acessado para verificar os campos, do lado do cliente fica mais rapido.
Mas esta é apenas a minha opnião…

D

Eu costumo fazer isso também, mais foi uma duvida que surgiu mesmo.

Você faz essas validações são no onblur do campo ou no submit do form?

F

Dependendo dos dados recomenda-se apenas a formatação no cliente e a validação no servidor.

Motivo: Há diversos browsers hoje em dia e alguns deles não se dão muito bem com o js.

A

Renato_natos:
Opa, eu costumo fazer estas validações no cliente, vc evita que o seu servidor seja acessado para verificar os campos, do lado do cliente fica mais rapido.
Mas esta é apenas a minha opnião…

Então mude sua opinião urgentemente, porque validação em javascript não é confiável, pois o usuário pode simplesmente desabilitar o javascript, ou mesmo, com ajuda de plugins, mudar o comportamento do seu código javascript em tempo de execução.

Validação Server-Side: OBRIGATÓRIA

Validação Client-Side: OPCIONAL

F

Pelo amor de Deus não faça issssooooo! kkkkkkkkkkkk
Sem duvida nenhuma no servidor!!!
Por que?

  1. JavaScript pode ser desabilitado nos navegadores…
  2. Mesmo os dados sendo validados por JavaScript, qualquer sniffer, pode adulterar o conteúdo de um HTTP, em qualquer NODE de trafego, deixando os dados com valores inválidos.
  3. Hoje as soluções flexíveis corporativas tende a ter varias camadas de visão diferentes simultâneas - desktop, web, smartphone, tv, web services - Deixando a validação no servidor, vc implementa uma vez e reutiliza em todas as camadas…implementando em JavaScript…vc esta tipando a validação para HTML que não funcionara nas outras camadas…ou seja duplicação de código!

Segue outras dicas - http://fernandofranzini.wordpress.com/2010/12/16/plano-de-vulnerabilidades/

Então meu querido…antigamente nos timanhos esse problema (anos 90) de trafego HTTP…mas hoje temos uma abordagem que se chama AJAX que ja contornou isso há mais de 10 anos atras kkkk
T+

F

Bom… como disseram, a validação no servidor é obrigatória!
Javascript é muito fácil de mudar na hora da execução (ferramentas do chrome, firebug…), então não dá para confiar 100% nelas.
Então, costumo fazer nos dois (ou, apenas no servidor mesmo). Fazendo nos dois, caso o javascript esteja habilitado e sem nenhum espertinho, evita de comunicar com o servidor quando os dados estão errados.

D

Galera, obrigado pela contribuição de todos.

Realmente, o mais critico é poder desabilitar o javascript, e coisas do gênero. No server-side eu costumo utilizar o hibernate validator.

Tenho que ver melhor essa abordagem, porque hoje se o javascript estiver desabilitado não tenho respaldo, porque como é feito tudo em ajax, submit, validação, mensagem de retorno do servidor.

Tem como detectar se o navegador esta com javascript desabilitado?

Esta ficando interessante a discussão.

F

davisnog:
Galera, obrigado pela contribuição de todos.

Realmente, o mais critico é poder desabilitar o javascript, e coisas do gênero. No server-side eu costumo utilizar o hibernate validator.

Tenho que ver melhor essa abordagem, porque hoje se o javascript estiver desabilitado não tenho respaldo, porque como é feito tudo em ajax, submit, validação, mensagem de retorno do servidor.

Tem como detectar se o navegador esta com javascript desabilitado?

Esta ficando interessante a discussão.


Sim
http://www.w3schools.com/tags/tag_noscript.asp

M

eu gosto de ter certas validações (como campo obrigatório) no onblur de forma a se ter uma resposta rápida e todas as validações no servidor quando se da o submit , devido a tantas formas de se burlar a validação client side como ja foi dito.

D

Obrigado pela colaboração galera.

Criado 1 de setembro de 2011
Ultima resposta 4 de set. de 2011
Respostas 10
Participantes 7