-
-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sanitização causa validação errônea quando a input possue letras #121
Comments
@ptsilva realmente, o bug existe! Já sobre a correção, não acho que a gente deve validar sobre o input bruto, pois estaremos assumindo que o usuário nunca irá enviar informação inválida no request. Acho que a melhor solução aqui é especificar a sanitização em cada caso específico. Tenho em mente uma possível solução, mas preciso de algum tempo para implementar ela. Agradeço sua contribuição! |
Obrigado pelo retorno @vicentimartins, acho que podemos pensar um pouco sobre essa questão, veja esse exemplo: $request = ['cpf' => ' 258.727.290-49 ']; Meu entendimento nesse caso, é que sim, poderíamos aplicar um Dessa forma, passaria na validação e a aplicação ainda sim receberia um valor inválido/duvidoso. |
Veja um caso de duas inputs que são aplicadas a regra de validação para CNH:
Ambos passam na validação, pois a chamada do método sanitize:
validator-docs/src/validator-docs/Rules/Cnh.php
Line 22 in 10b2021
O sanitize altera o valor antes da valiação, porém, como ele não altera o próprio request (e nem faz sentido), a aplicação identifica como válido um valor que na verdade é inválido.
Testei com CNH, mas com certeza deve ocorrer em todas as Rules que também utilizam o sanitize.
A correção é simples, a validação deve ser feita em cima da input bruta e não deve haver nenhuma transformação antes da validação.
The text was updated successfully, but these errors were encountered: