Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/04/2008, 13:46
bysv
 
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 17 años
Puntos: 0
Pregunta Problema al verificar el password

Buenas a todos.
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:
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;
}
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;
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