Provavelmente vocês algum dia já esqueceram a senha de acesso a algum site, e precisaram clicar naquele famoso link "Recuperar Senha".
E quando clicamos, é solicitado o e-mail utilizado dirante o cadastro, para que seja enviada uma nova senha, para nosso e-mail, e esta senha, normalmente não é a senha que cadastramos, isto porque, o sistema teve que reiniciar sua senha e gerar uma nova senha, já que você a esqueceu.
Por motivos de segurança os sites guardam as senhas em banco de dados criptografada (usando MD5, crypt, etc).
Neste exemplo, veremos como utilizar o PHP para gerar uma senha aleatória, randômica, em nosso site.
NOTA: no código abaixo, estarei utilizando a numeração nas linhas apenas para melhor visualização e explicação do código. Não digitem estes números de linhas em seu código.
1. <?php
2.
3. $CaracteresAceitos = 'abcdxywzABCDZYWZ0123456789';
4.
5. $max = strlen($CaracteresAceitos)-1;
6.
7. $password = null;
8.
9. for($i=0; $i < 8; $i++) {
10.
11. $password .= $CaracteresAceitos{mt_rand(0, $max)};
12.
13. }
14.
15. echo $password;
16.
17. ?>
Vamos a explicação:
Linha 1:
Abrimos a TAG do PHP
Linha 3:
Criamos uma variável de nome $CaracteresAceitos que irá armazenar letras e números necessários para gerar nossa senha.
Linha 5:
Criamos a variável $max e utilizamos a função "strlen" para contar quantos caracteres a variável $CaracteresAceitos tem.
Linha 7:
Criamos a variável $password e atribuímos a ela o valor null
Linha 9:
Criamos um loop para que nossa senha tenha o tamanho máximo de 8 caracteres
Linha 11:
Concatenamos (.=) a variável $CaracteresAceitos em nossa variável $password, e utilizamos a função mt_rand() para gerar uma senha aleatória, baseada no conteúdo da variável $CaracteresAceitos
Linha 13:
Fechamos a chave do loop
Linha 15:
Utilizamos o echo para exibir o novo valor da variável $password, gerada de forma randômica
Linha 17:
Fechamos a TAG do PHP.
Espero que tenham gostado do artigo, até a próxima vez ;)
fonte:plugmasters.com.br