Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/02/2013, 12:24
jjeshuacm1
 
Fecha de Ingreso: septiembre-2012
Mensajes: 73
Antigüedad: 11 años, 7 meses
Puntos: 0
Pregunta comparar contraseñas md5 al hacer login

hola espero me puedan ayudar,,,
tengo un registro de inicio el cual posee un campo contraseña, yo lo encripte con md5 , y lo guarda bien. el problema resulta cuando quiero comparar la contraseña que envia el usuario con la que se encuentra en la base de datos, para eso tengo q encriptar pero lo hago y no funciona, creo q hay un problema con la funcion conexiones.

aqui tomo los valores del login para enviarlo a la funcion conexiones

Código PHP:
Ver original
  1. include ('funciones.php');
  2. //usuario y clave pasados por el formulario
  3. $nombre = $_POST['nombre'];
  4. $contrasena=md5($_POST['contrasena']);
  5. $valor= $_POST['valor'];
  6. //usa la funcion conexiones() que se ubica dentro de funciones.php
  7.  
  8.          if($nombre!="" && $contrasena!=""){
  9.            
  10.             conexiones($nombre, $contrasena);
  11.             }


este es parte del codigo de la funcion conexiones, no lo pegue todo por q no es relevante ... este es la parte donde hago la consulta y lo demas


Código PHP:
Ver original
  1. <?php
  2.  
  3. //funcion para conectar a la base de datos y verificar la existencia del usuario
  4. function conexiones($nombre, $contrasena) {
  5.    
  6.    
  7.     //conexion con el servidor de base de datos MySQL
  8.     $conectar = mysql_connect('localhost','root','');
  9.     //seleccionar la base de datos para trabajar
  10.     mysql_select_db('bd_ateneo',$conectar);
  11.     //sentencia sql para consultar el nombre del usuario
  12.    
  13.     $sql = "SELECT * FROM bd_ateneo.usuarios WHERE nombre='$nombre' AND contrasena='$contrasena'";
  14.     //ejecucion de la sentencia anterior
  15.     $ejecutar_sql=mysql_query($sql,$conectar);
  16. if(mysql_num_rows($ejecutar_sql)>0){
  17.         $fila=mysql_fetch_array($ejecutar_sql);    
  18.     }
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.          
  26.  
  27.     //si existe inicia una sesion y guarda el nombre del usuario
  28.     if (mysql_num_rows($ejecutar_sql)!=0){
  29.         //inicio de sesion
  30.         session_start();
  31.         //configurar un elemento usuario dentro del arreglo global $_SESSION
  32.         $_SESSION['nombre']=$nombre;
  33.         $_SESSION['nivel']=$fila["nivel"];
  34.         $_SESSION['cedula']=$fila["cedula"];
  35.         //retornar verdadero
  36.        
  37.        
  38.  
  39.  
  40.  
  41.        
  42.     if ($fila["nivel"]=="Administrador"){
  43.              header('Location:../Administrador.php');
  44.         }
cuando quito el md5, si inicia normal, pero cuando le agrego el md5 no inicia con los usuarios q tenian contraseñas encriptadas