Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Diego Coutinho

ocultar ou criptografar senha no banco de dados com php mysql

Recommended Posts

Olá! Porque você gostaria de "ocultar" ou "criptografar" um Usuário e Senha no Banco de dados MySQL? Não entendi a lógica rsrs... Você quer dizer, cadastrar um USUARIO e CRIPTOGRAFAR uma SENHA COM PHP usando MD5...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok... Me responde duas perguntas... Gostaria de cadastrar um Registro e Criptografar a Senha usando PHP, como por exemplo MD5? Isso seria um Cadastro no Banco de dados?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja a lógica neste artigo: http://forum.imasters.com.br/topic/192408-sistema-de-cadastro-em-phpmysql/

 

Apenas duas observações:

 

1. funções mysql_* estão obsoletas desde o PHP 5.5. Prefira usar MySQLi ou PDO. Veja mais aqui: http://www.ultimatephp.com.br/php-por-que-nao-utilizar-funcoes-mysql

 

2. Prefira usar outro algoritmo de hash em vez de MD5. O MD5 pode ser "facilmente" quebrado com as rainbow-tables que existem hoje. Prefira algo como sha-512. Veja a função hash

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá! Amigo é MUITO fácil de fazer, usando apenas uma função... Segue um Pequeno Exemplo, usando uma criptografia do PHP chamada MD5. Eu uso ela para senhas...

<?php
$senha = md5($_POST['senha']);

// Adicionando a função md5($STRING), a sua senha esta criptografada!
?>

Alguma Dúvida...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá! Amigo é MUITO fácil de fazer, usando apenas uma função... Segue um Pequeno Exemplo, usando uma criptografia do PHP chamada MD5. Eu uso ela para senhas...

<?php
$senha = md5($_POST['senha']);

// Adicionando a função md5($STRING), a sua senha esta criptografada!
?>

Alguma Dúvida...?

Ola Amigo voce me ajudou mundo com md5 , mais porem eu estou com outro probleminha , quando o usuario é cadastra do no bando de dados ,com a senha criptogafada ele não consegue fazer o login a senha não corresponde .

 

Acho que pricisa descriptografar para fazer o login né

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa descriptografar não. (até porque não é possível).

Você precisa é criptografar também a senha enviada no form de login.

 

Assim você compara "senha com md5 do login" contra "senha md5 do banco", entendeu ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim mais não sei que esta de errado com a meu codigo

 

Isso seria função cadastra

<?php
include"conexao.php";
$nome = $_POST["nome"];
$senha = md5($_POST['senha']);
$cadastra = mysql_query("INSERT INTO usuarioadm (nome,senha) values('$nome','$senha')");
?>
Isso seria a função logar que esta dando erro
<?php
$nome = $_POST["nome"];
$senha = $_POST['senha'];
$senhacri = md5('$senha');

if($senha == md5($senhacri))


$sql = mysql_query("SELECT * FROM usuarioadm WHERE nome='$nome' and senha =' $senhacri '");
$row = mysql_num_rows($sql);
if($row > 0){
session_start();

$_SESSION['nome']=$_POST['nome'];
$_SESSION['senha']=$_POST['senha'];
 
echo"voce voi logado";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está passando por 2 md5 a mesma variável, e em uma das vezes ainda transforma ela numa string, e perde todo o valor dela.

 

Faça assim:

<?php
$nome = $_POST["nome"];
$senhacri = md5($_POST['senha']);

$sql = mysql_query("SELECT * FROM usuarioadm WHERE nome='$nome' and senha = '{$senhacri}' ");
$row = mysql_num_rows($sql);
if($row > 0){
  session_start();

  $_SESSION['nome']=$_POST['nome'];
  $_SESSION['senha']=$_POST['senha'];
 
  echo"voce foi logado";
}
?>
retirei o if, pois ele não tinha o menor sentido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.