Postagem teste de Senha

Postagem teste de Senha
Para isso, vamos fazer uso da função password().

Lembrete: Está função,
só criptografa a senha e não tem um método
de descriptografia.
Exemplo prático
1 – Vamos criar uma pequena tabela (tb_teste)
CREATE
TABLE tb_teste (
  id_senha int(3) NOT NULL auto_increment,
  senha varchar(20) NOT NULL DEFAULT ” ,
  cript varchar(30) NOT NULL DEFAULT ” ,
  PRIMARY KEY (id_senha)
);
2 – Criar o arquivo que vai fazer a conexão com
a nossa base de dados MySQL (conecta.php)
<?
/* Conecta com um banco de dados MySQL conforme parâmetros
enviados (servidor = localhost)
Banco de Dados: $dbname
Porta: $usuario
Senha: $senha
*/
$dbname="nomedobd";
$usuario="";
$password="";

//1º passo – Conecta ao servidor MySQL
if(!($id = mysql_connect("localhost",$usuario,$password)))
{
echo "<p align="center"><big><strong>Não
foi possível estabelecer
uma conexão com o gerenciador MySQL. Favor Contactar
o Administrador.
</strong></big></p>";
exit;
}

//2º passo – Seleciona o Banco de Dados
if(!($con=mysql_select_db($dbname,$id))) {
echo " <p align="center"><big><strong>Não
foi possível estabelecer
uma conexão com o gerenciador MySQL. Favor Contactar
o Administrador.
</strong></big></p>";
exit;
}
?>
3 – Arquivo que vai criptografar a senha (cript.php)
<?
include "conecta.php"; //chama o arquivo que
conecta ao MySQL

$senha = ‘123456’;
$sql = mysql_query("INSERT INTO tb_teste(senha,cript)
VALUES(‘$senha’,password(‘$senha’))") 
          or
die("ERRO no comando SQL : ".mysql_error());
echo "Senha criptografada";
?>
Como vocês podem ver acima,
eu deixei uma senha padrão = 123456. Depois de ter
executado o comando acima, veja como vai ficar gravado em
nossa base de dados.
Id_senha
Senha
Cript
1
123456
565491d704013245
O campo id_senha é auto_incremento;
O campo senha é o dado sem estar criptografado.
O campo cript é a senha criptografada.
Esse é um exemplo simples do uso da função
password() para a criptografia de senhas em
PHP. Aconselho vocês a modificarem o código para
que se possa fazer a adaptação necessária
a seu uso.
Atenção: Quando
for fazer uma pesquisa, você precisa criptografar esse
campo também, caso contrário, sua pesquisa não
irá retornar nada.
Exemplo prático: (pesq.php)

<?
include "conecta.php"; //Conecta com a nosso
banco de dados MySQL
$senha
= ‘123456’;
$sql = mysql_query("SELECT senha,cript FROM tb_teste
       WHERE
          cript
= password($senha)") or die("ERRO no comando SQL
: ".mysql_error());

if(mysql_num_rows($sql) > 0)
  echo "Achei a senha";
else
   echo "Não achei";
?>
Dica:Faça um teste, execute o arquivo cript.php para
criptografar a senha(123456). Depois de ter feito, execute
o arquivo pesq.php, que é o responsável pela
pesquisa de senha. Se tudo ocorrer bem, ele deve te informar
que ele encontrou a senha. Para concluir, faça o seguinte:
mude a linha do SQL do arquivo pesq.php para:
$sql
= mysql_query("SELECT senha,cript FROM tb_teste
       WHERE
          cript
= $senha") or die("ERRO no comando SQL : ".mysql_error());
O que fizemos foi tirar a função password()
do SELECT. Como resultado teremos a frase: Não achei.

Conclusão: Quando se tem uma senha criptografada,
é necessário criptografar ela também
para fazer pesquisa.

500 Palavras