Cadastro e Login - #19 Validate Password
15/10/2018No tutorial de hoje aprenderemos como realizar a validação da senha no cadastro. Verificaremos a força da senha e se a senha está igual a confirmação de senha.
Validação de senha no cadastro
Para validação de senha teremos 3 métodos, sendo que o último dele será trabalhado quando entrarmos na parte de login. Estes métodos deverão ser colocados dentro da ClassValidate.
#Verificar se a senha é igual a confirmação de senha
public function validateConfSenha($senha,$senhaConf)
{
if($senha === $senhaConf){
return true;
}else{
$this->setErro("Senha diferente de confirmação de senha!");
}
}
#Verificar a força da senha
public function validateStrongSenha($senha,$par=null)
{
$zxcvbn=new Zxcvbn();
$strength = $zxcvbn->passwordStrength($senha);
if($par==null){
if($strength['score'] >= 3){
return true;
}else{
$this->setErro("Utilize uma senha mais forte!");
}
}else{
/*login*/
}
}
#Verificação da senha digitada com o hash no banco de dados
public function validateSenha($email,$senha)
{
}
Repare que no código acima utilizamos a classe Zxcvbn. Essa classe verifica a força da senha e retorna um score de 0 a 4 pra força da senha. Para instalar a classe utilizamos o composer adicionando no composer.json a linha "bjeavons/zxcvbn-php": "^0.4" dentro do require. Depois basta dar um composer update no terminal.
Mais informações sobre a classe podem ser visualizadas clicando aqui.
Após isso, basta chamarmos os métodos no nosso controllerCadastro.php
$validate->validateConfSenha($senha,$senhaConf);
$validate->validateStrongSenha($senha);