Tengo un problemilla con mi codigo que funciona a la perfeccion en local, pero al subirlo al servidor el login no me funciona. Probando he llegado a determinar que el problema es que no se da cuenta de que el password que pongo es igual al registrado en la base de datos.
Me explico mejor; esta es mi funcion login:
Cita:
Comprobado mediante un "echo" las variables $username y $password y llegan a la funcion perfectamente. También he comprobado que la conexion se lleve a cabo correctamente; function login($username, $password)
// comprueba username y password en la base de datos
{
// conecta a la base de datos
$conn = db_conectar();
if (!$conn)
return 0;
// comprueba el usuario
$result = mysql_query("select * from datosregistro where username='$username' and passwd = password('$password')",$conn);
if (!$result)
return 0;
$num_rows = mysql_num_rows($result);
if ($num_rows>0)
return 1;
else
return 0;
}
// comprueba username y password en la base de datos
{
// conecta a la base de datos
$conn = db_conectar();
if (!$conn)
return 0;
// comprueba el usuario
$result = mysql_query("select * from datosregistro where username='$username' and passwd = password('$password')",$conn);
if (!$result)
return 0;
$num_rows = mysql_num_rows($result);
if ($num_rows>0)
return 1;
else
return 0;
}
El problema lo he detectado en que al hacer un echo "$num_rows Rows\n";
el resultado es "0 Rows" por lo que mi funcion de login devuelve 0.
Entonces la consulta del password no se hace correctamente ya que si quito "and passwd = password('$password')" de la consulta entra perfectamente, pero es necesario obtener el acceso introduciendo un password (logicamente).
He estado buscando y no se como ponerlo para que valide al usuario.
*PD: aclarar que al introducir los datos en la base de datos tb uso password('$password') con lo que se supone que la forma de encriptar es igual
A ver si alguien sabe cual es mi problema de que no me reconozca el pass y si no cual forma seria mas aconsejable para introducir y comprobar el password.
Muchas graciasss y saludos a FDW