Ir para o conteúdo
softklin

Valerá a pena fazer validações do lado do cliente?

Mensagens Recomendadas

softklin    12
softklin

Boas pessoal.

Penso que a pergunta do título seja bastante explícita. Como sabem, em formulários na web, é sempre bom validar o que utilizador escreve (sabe-se lá o que ele lá põe... :thumbsup:). Pode-se fazer isto de várias maneiras, entre as quais 2: uma rápida validação do lado do cliente com Javascript e outra, uma validação do lado do servidor.

Ora, ambas têm as suas desvantagens, por exemplo, uso inadequado de recursos do servidor, javascript facilmente desactivado, etc...

O que gostava de saber era a vossa "técnica" neste campo: usam validação por JS, ou nem por isso? Porquê? Qual acham mais eficiente no caso geral?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
skin    0
skin

Eu penso que sim, coisas como o comprimento de um campo, se o campo está correctamente preenchido a nível de quais caracteres foram introduzidos, se as duas pass's são iguais, se o e-mail é um e-mail possívelmente fidedigno, se preencheu todos os campos obrigatórios. Isto tudo do lado do cliente através de JavaScript não recorrendo ao servidor. Porque assim facilita o trabalho ao utilizador porque sabe o que está mal e pode corrigir antes de submeter porque se não souber pode submeter com erros e ter de fazer tudo novamente, assim poupa-se trabalho e é mais user friendly :thumbsup:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
djthyrax    11
djthyrax

Verificações no cliente podem ser contornadas muito facilmente, no servidor não. Por isso, verificação no servidor é obrigatória, e no cliente podes sempre também fazer verificações, sempre dá para filtrar algumas coisas. ;)

PS: skin, dá uma olhada ao fórum next-door sff. :thumbsup:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Triton    12
Triton

Podes utilizar as duas: validação do lado do cliente para "filtrar" a maior parte dos erros nos formulários, e usar validação no servidor sempre que recebes um request.

Parece-me a melhor solução - uso de recursos do servidor reduzido e validação em todos os casos.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
skin    0
skin

Sim, eu referia-me mesmo a usar a validação do lado do cliente APENAS para ajudar o utilizador e nunca para fazer tudo. Tens de ter sempre uma boa validação do lado do servidor!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
softklin    12
softklin

Obrigado pelas respostas.

Eu penso que sim, coisas como o comprimento de um campo, se o campo está correctamente preenchido a nível de quais caracteres foram introduzidos, se as duas pass's são iguais, se o e-mail é um e-mail possívelmente fidedigno, se preencheu todos os campos obrigatórios. Isto tudo do lado do cliente através de JavaScript não recorrendo ao servidor. Porque assim facilita o trabalho ao utilizador porque sabe o que está mal e pode corrigir antes de submeter porque se não souber pode submeter com erros e ter de fazer tudo novamente, assim poupa-se trabalho e é mais user friendly :thumbsup:

Sim, é bem verdade, e até dá um ar mais arrumado do que estar sempre a voltar atrás e ter de preencher o que falta, depois avança e falta outra coisa...

Verificações no cliente podem ser contornadas muito facilmente, no servidor não. Por isso, verificação no servidor é obrigatória, e no cliente podes sempre também fazer verificações, sempre dá para filtrar algumas coisas. ;)

Podes utilizar as duas: validação do lado do cliente para "filtrar" a maior parte dos erros nos formulários, e usar validação no servidor sempre que recebes um request.

Parece-me a melhor solução - uso de recursos do servidor reduzido e validação em todos os casos.

É por isso que perguntei: uma vez que pode ser contornado, temos de nos preocupar 2 vezes, digamos assim... Era esse trabalho que queria evitar, no meu caso, os formulários nem são muito grandes, mas imaginemos uma ficha de cliente, com moradas, telefone, estado civil, etc. etc... Para além do enorme número de validações, ainda temos de as repetir no servidor...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jsWizard    6
jsWizard

Viva!

Validações do lado do servidor são obrigatórias! (se não queremos que nos lixem..) As validações do lado do cliente são para mim também essenciais. Isto porque:

- Não vale a pena enviar coisas para o servidor erradas.. se as podemos validar logo do lado do cliente.

- É muito mais intuitivo e imediato para o utilizador.

- A aplicação/página web fica com o "feel" muito melhor.. evita-se o tempo de espera do round-trip ao servidor, etc.

- é uma questão até de usabilidade e classe :thumbsup:

e...

Para além do enorme número de validações, ainda temos de as repetir no servidor...

para quem como eu, programa em JavaScript client e server-side.. é uma limpeza! ou seja, em muitos casos, os métodos que desenvolvo para validar o input na web, são reutilizados para fazer a "re-validação" do lado do servidor (muitas vezes.. simples copy-paste das class/métodos/funções)

;) é uma maravilha!

para quem programa em C#, JSP ou até PHP, eu diria que quase que consegue fazer o mesmo.. o core dessas linguagens não é assim tão diferente.. já não é o COPY-PASTE.. mas em muitos casos até anda lá perto.

inté!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
skin    0
skin

jsWizard tem razão, é muito fácil fazer a portabilidade de JavaScript para PHP e vice-versa, por exemplo alguns dos Desafios P@P eu resolvi utilizando JavaScript e PHP ( e outras ) e foi só modificar umas coisinhas :thumbsup:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade