roger_php 0 Denunciar post Postado Setembro 30, 2006 Amigos estou criptografando o usuario e a senha, mas quando é para descriptografar ele não dá certo:<?php//obtem os valores digitados$apelido=$_POST["apelido"];$senha=$_POST["senha"];$apel_des = base64_decode($apelido);$senha_des = base64_decode($senha);//acesso ao banco de dadosinclude "conecta_mysql.inc.php";$resultado = mysql_query("SELECT * FROM cad_usuario where cj_usr_chr_apelido='$apel_des' ");$linhas = mysql_num_rows ($resultado);if($linhas==0) //testa se a consuta retornou algum registro { echo "<html><body>"; echo "<p align=center>Apelido não encontrado.</p>"; echo "<p align=center><a href=default.php>Voltar</a></p>"; echo "</body></html>";Ele sempre cai no IF, pois não encontra o apelido(username). Sendo que no banco esta criptografado, o que esta dando de errado? Compartilhar este post Link para o post Compartilhar em outros sites
skimo-solar 0 Denunciar post Postado Setembro 30, 2006 $apel_des = base64_decode($apelido);$resultado = mysql_query("SELECT * FROM cad_usuario where cj_usr_chr_apelido='$apel_des' "); pois não encontra o apelido(username). Sendo que no banco esta criptografadoEntão o problema é esse, você está procurando descriptografado e no banco está criptografado. Obs: Tratar senhas com um algoritmo tão facilmente reversível como base64 não é muito seguro. O ideal seria utilizar md5 para guardar no bd, depois na hora de testar se a senha está correta seria só utilizar o md5 na entrada e ver se bate com algum dos hashes guardados. Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Setembro 30, 2006 tente assim: //obtem os valores digitados$apelido = $_POST["apelido"];$senha = $_POST["senha"];$apel_des = base64_encode($apelido);$senha_des = base64_encode($senha);//acesso ao banco de dadosinclude "conecta_mysql.inc.php";$resultado = mysql_query("SELECT * FROM cad_usuario where cj_usr_chr_apelido='$apel_des'");$linhas = mysql_num_rows ($resultado);if($linhas==0) //testa se a consuta retornou algum registro{echo "<html><body>";echo "<p align=center>Apelido não encontrado.</p>";echo "<p align=center><a href=default.php>Voltar</a></p>";echo "</body></html>"; Compartilhar este post Link para o post Compartilhar em outros sites
roger_php 0 Denunciar post Postado Setembro 30, 2006 tente assim: //obtem os valores digitados$apelido = $_POST["apelido"];$senha = $_POST["senha"];$apel_des = base64_encode($apelido);$senha_des = base64_encode($senha);//acesso ao banco de dadosinclude "conecta_mysql.inc.php";$resultado = mysql_query("SELECT * FROM cad_usuario where cj_usr_chr_apelido='$apel_des'");$linhas = mysql_num_rows ($resultado);if($linhas==0) //testa se a consuta retornou algum registro{echo "<html><body>";echo "<p align=center>Apelido não encontrado.</p>";echo "<p align=center><a href=default.php>Voltar</a></p>";echo "</body></html>"; Cara eu fiz exatamente isso, e não dá certo ele continua caindo no IF. O que esta acontecendo? Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Setembro 30, 2006 o apelido que está no bd foi criptografado com base6_encode() ?? Compartilhar este post Link para o post Compartilhar em outros sites
roger_php 0 Denunciar post Postado Setembro 30, 2006 o apelido que está no bd foi criptografado com base6_encode() ??Estão sendo os dois criptografados assim:$apelido_des = base64_encode($apelido);$senha_des = base64_encode($senha); Compartilhar este post Link para o post Compartilhar em outros sites
skimo-solar 0 Denunciar post Postado Setembro 30, 2006 No banco de dados eles já estão criptografados?Se já estiverem o problema no seu código fica aqui: $apel_des = base64_decode($apelido);$senha_des = base64_decode($senha);Aqui você está decodificando ao invés de codificar.Agora, se você recebe a entrada normal, você precisa codificá-la:$apel_des = base64_encode($apelido);$senha_des = base64_encode($senha);Como o MagicalTrevor colocou./* SUA ESCOLHA DEPENDE DE COMO ESTÁ NO BANCO DE DADOS */// criptografa$apel_des = base64_encode($apelido);$senha_des = base64_encode($senha);// descriptografa$apel_des = base64_decode($apelido);$senha_des = base64_decode($senha);/**********************///acesso ao banco de dadosinclude "conecta_mysql.inc.php";$myquery = "SELECT * FROM cad_usuario where cj_usr_chr_apelido=$apel_des";$resultado = mysql_query($myquery);$linhas = mysql_num_rows ($resultado); Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Setembro 30, 2006 se msm assim nao funcionou, posta o script, talvez esteja algo errado. Compartilhar este post Link para o post Compartilhar em outros sites