greyback Posted May 5, 2008 Report Share Posted May 5, 2008 $original=mysql_query("select password('clipass') from clientes where cliuser='$user'",$lig); $lin=mysql_fetch_row($original); $original=$lin[0]; echo $original; Boas! Eu tenho uma base de dados de clientes com a password encriptada, e gostaria de fazer um menu, em que fosse possível alterar a password, com o UPDATE... mas agora imprimo a password ( está encripatada) para a comparar com a password original que o user insira como metodo de validação, e nao consigo comparar... e gostaria de saber como faço em codigo PHP para desincriptar e comparar com a original, que dps da validação de comparação, usaria o UPDATE para a actualização da base de dados... podem-me ajudaR? Link to comment Share on other sites More sharing options...
Hipnoted Posted May 5, 2008 Report Share Posted May 5, 2008 Não precisas de desencriptar, basta encriptar a inserida e compará-la com a que está na BD. "Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência" Link to comment Share on other sites More sharing options...
greyback Posted May 5, 2008 Author Report Share Posted May 5, 2008 $nova1=password('nova'); e como encripto? sem inserir? Link to comment Share on other sites More sharing options...
TheDark Posted May 5, 2008 Report Share Posted May 5, 2008 Da mesma maneira que encriptaste quando inseriste? Desaparecido. Link to comment Share on other sites More sharing options...
cyclop Posted May 5, 2008 Report Share Posted May 5, 2008 greyback não faço a minima ideia de qual sistema usaste (ou usaram) para encriptar a password, pas penso ser a mais comum, o MD5, para comparar usa md5('apassword'). Boa sorte "Quando eu for grande quero ser como o Celso" Link to comment Share on other sites More sharing options...
greyback Posted May 5, 2008 Author Report Share Posted May 5, 2008 Da mesma maneira que encriptaste quando inseriste? eu para encriptar, usei $str="insert into clientes (cliuser,clipass,climorada,clitele,clinome,climail,clidataadmi) values ('$login' ,password('$pass'),'$morada' ,'$telef','$nome','$mail','$d')"; tao simples quanto isso password('$pass') logo se nao quero inserir como faço para encriptar sem inserir na base de dados? greyback não faço a minima ideia de qual sistema usaste (ou usaram) para encriptar a password, pas penso ser a mais comum, o MD5, para comparar usa md5('apassword'). Boa sorte nao percebi muito bem como usar :x md5('pass','pass1') ? Link to comment Share on other sites More sharing options...
TheDark Posted May 5, 2008 Report Share Posted May 5, 2008 password('$pass') Aí tens a tua resposta 👍 Desaparecido. Link to comment Share on other sites More sharing options...
greyback Posted May 5, 2008 Author Report Share Posted May 5, 2008 Aí tens a tua resposta 👍 mas não dá :s isso foi o que já fiz e nao deu 😄 :s $nova1=password('nova'); ponho isto e dá o seguinte erro: Fatal error: Call to undefined function password() in C:\Programas\wamp\www\ClubeVideo\HTML\alterarpass.php on line 13 Link to comment Share on other sites More sharing options...
DiguiVirus Posted May 5, 2008 Report Share Posted May 5, 2008 Aqui tens uma função que fiz num instante para te mostrar como comparar duas strings que podem ser passwords: <?php $texto_1 = md5("password1"); //encripta o primeiro valor (inserir query DB) $texto_2 = md5("password1"); //encripta o segundo valor $resultado = strcmp ($texto_1, $texto_2); $texto = ($resultado == TRUE)?"As passwords não são iguais.":"As passwords são iguais."; echo "<center><h1>".$texto."</h1></center>"; ?> Na password 1 basta pores uma variavel que va buscar os dados à BD. 👍 www.videosloucos.net Link to comment Share on other sites More sharing options...
greyback Posted May 5, 2008 Author Report Share Posted May 5, 2008 Aqui tens uma função que fiz num instante para te mostrar como comparar duas strings que podem ser passwords: <?php $texto_1 = md5("password1"); //encripta o primeiro valor (inserir query DB) $texto_2 = md5("password1"); //encripta o segundo valor $resultado = strcmp ($texto_1, $texto_2); $texto = ($resultado == TRUE)?"As passwords não são iguais.":"As passwords são iguais."; echo "<center><h1>".$texto."</h1></center>"; ?> Na password 1 basta pores uma variavel que va buscar os dados à BD. 👍 *2105116A108E03930F47CFD5A5555F37530FB30D b148e7f41fdc3be4b14e8d17e068bbad a primeira é a forma que ta na base de dados :S a segunda é a forma q me disseste :S não da :s nao deve ser a emsma forma de encriptação, porque a pass é a mesma e nao coincidem :S Link to comment Share on other sites More sharing options...
Battousai Posted May 5, 2008 Report Share Posted May 5, 2008 greyback, se a password já está encriptada, não vais encriptar outra vez. E tenta ver se a encriptação é sha1 (é o mesmo processo). Link to comment Share on other sites More sharing options...
greyback Posted May 5, 2008 Author Report Share Posted May 5, 2008 greyback, se a password já está encriptada, não vais encriptar outra vez. E tenta ver se a encriptação é sha1 (é o mesmo processo). tambem nao xD tou a tentar de outra forma :s Link to comment Share on other sites More sharing options...
DiguiVirus Posted May 5, 2008 Report Share Posted May 5, 2008 *2105116A108E03930F47CFD5A5555F37530FB30D b148e7f41fdc3be4b14e8d17e068bbad a primeira é a forma que ta na base de dados :S a segunda é a forma q me disseste :S não da :s nao deve ser a emsma forma de encriptação, porque a pass é a mesma e nao coincidem :S Greyback, tu sabes a password que esta na base de dados? Só se souberes e puseres na função para criar a hash (md5("apasswordqueforaqui")) é que as passwords vão ser iguais! -.- www.videosloucos.net Link to comment Share on other sites More sharing options...
TheDark Posted May 5, 2008 Report Share Posted May 5, 2008 Porque estão a complicar? A forma para ele gerar o hash da password já existe, e pertence ao MySQL. Só vi isso agora. Para obteres o hash para comparação, executa o seguinte: $q_res=mysql_query("select password('novapass')",$lig); $lin=mysql_fetch_row($q_res); echo $lin[0]; Desaparecido. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now