PHP - Problema al comprobar password en formulario

 
Vista:

Problema al comprobar password en formulario

Publicado por Victor Gonzalez (4 intervenciones) el 10/11/2006 20:53:17
Bueno... ya empieza a ir bien el tema de el sistema de login, mi problema viene ahora en que el password se encripta cuando se realiza el registro con

Código:

// Hash the password // $password = base64_encode(pack("H*", sha1(utf8_encode($password))));

Y a la hora de realizar el logueo pues... no me toma el password :S Lo que he realizado para probar ahora mismo es cambiar un password de la database para que no este encriptado y el sistema funciona.

Pero como hacer para que el formulario se fije en el password encriptado?!

Aqui lo que he realizado hasta ahora:

Login.php

<!doctype html public "-//w3c//dtd html 3.2//en">

<html>

<head>
<title>Titulo</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000">

<form action='loginck.php' method=post>
<table border='0' cellspacing='0' cellpadding='0' align=center>
<tr id='cat'>
<tr> <td bgcolor='#f1f1f1' ><font face='verdana, arial, helvetica' size='2' align='center'> Login
</font></td>
<td bgcolor='#f1f1f1' align='center'><font face='verdana, arial, helvetica' size='2' >
<input type ='text' class='bginput' name='login' ></font></td></tr>

<tr> <td bgcolor='#ffffff' ><font face='verdana, arial, helvetica' size='2' align='center'> Password
</font></td> <td bgcolor='#ffffff' align='center'><font face='verdana, arial, helvetica' size='2' >
<input type ='password' class='bginput' name='password' ></font></td></tr>

<tr> <td bgcolor='#f1f1f1' colspan='2' align='center'><font face='verdana, arial, helvetica' size='2' align='center'>
</font></td> </tr>

<tr> <td bgcolor='#f1f1f1' colspan='2' align='center'><font face='verdana, arial, helvetica' size='2' align='center'>
<input type='submit' value='Submit'> <input type='reset' value='Reset'>
</font></td> </tr>

<tr> <td bgcolor='#f1f1f1' colspan='2' align='center'><font face='verdana, arial, helvetica' size='2' align='center'>
</font></td> </tr>

</table></center></form>
</body>

</html>




loginck.php

Código PHP:
<?
include "include/session.php";

include "include/z_db.php";

?>
<!doctype html public "-//w3c//dtd html 3.2//en">

<html>

<head>
<title>Titulo</title>

</head>

<body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000">
<?
$login=mysql_real_escape_string($login);
$password=mysql_real_escape_string($password);

if($rec=mysql_fetch_array(mysql_query("SELECT * FROM l2jdb WHERE login='$login' AND password = '$password'"))){
if(($rec['login']==$login)&&($rec['password']==$password)){
include "include/newsession.php";
echo "<p class=data> <center>Logueado satisfactoriamente<br><br><a href='logout.php'> Desloguear </a><br></center>";
print "<script>";
print " self.location='bienvenido.php';"; // Comment this line if you don't want to redirect
print "</script>";

}
}
else {

session_unset();
echo "<font face='Verdana' size='2' color=red>Login incorrecto. Usa tu usuario y password correctos.<br><center><input type='button' value='Reintentar' onClick='history.go(-1)'></center>";

}
?>
</body>

</html>



Se que el fallo esta en

$password=mysql_real_escape_string($password);

pero no se como arreglarlo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder