Validação de entrada do usuário, do lado do cliente ou do servidor? [PHP / JS]

É melhor validar a entrada do usuário antes de ser enviada para o servidor com JS ou do lado do servidor com PHP? Ou talvez valha a pena fazer as duas coisas apenas por estar do lado seguro?

Estou criando um site (muito simples no momento) que possui uma área de membros / área de administração / etc. No momento, só tenho entrada de usuário com nome de usuário e senha; no futuro, haverá mais (email, endereço etc.), mas qual é a melhor prática para verificar os dados?

Eu jogo uma carga de instruções 'if ... else' até que o usuário acerte? Ou talvez tenha variáveis separadas para cada valor inserido pelo usuário e defina-o como verdadeiro ou falso, se estiver correto ou errado? (como validação de email para garantir que esteja no formato de email)

Existem várias maneiras de fazer isso, mas quais você sugeriria? Eu não quero escrever 50 linhas de código quando eu poderia fazer o trabalho em 10 linhas ... se isso faz sentido: p

Qualquer ajuda seria apreciada, obrigado! :)

questionAnswers(6)

yourAnswerToTheQuestion