Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/10/2012, 11:41
rufus
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 15 años, 6 meses
Puntos: 1
fallo formulario de login en php orientado a objetos..

hola tengo un formulario login.php que cuando meto el usuario y contraseña correctos no me redirecciona a la pagina a la que debe redireccionarme, pero si introduzco un usuario y contraseña erroneos si me da el mensaje de error de los mismos.

y no se que puede fallar, haber la contraseña la codifico con sha1 en el archivo create.php (donde creo el usuario de la base de datos)

pero ahora que observo la pagina login.php y las clases que utiliza etc no veo mencion a la funcion sha1

los scripts los hice hace mucho y antes me funcionaban pero ahora no y no entiendo por que os dejo un poco de codigo..


login.php:

Código PHP:
Ver original
  1. <?php
  2. require_once("../../includes/initialize.php");
  3. if($sesion->esta_logueado())
  4. {
  5.     redireccionar_a("admin.php");
  6. }
  7. ?>
  8. <?php
  9. if(isset($_POST["submit"]))
  10. {
  11.     $username = $_POST["username"];
  12.     $password = $_POST["password"];
  13.    
  14.     $usuario= Usuario::autenticar($username,$password);
  15.    
  16.    
  17.  
  18.     if($usuario)
  19.     {
  20.         global $sesion;
  21.         $sesion->loguearse($usuario);
  22.         grabar_acciones("logueo", "el usuario ".$usuario->id . " se ha logueado.");
  23.         redireccionar_a("admin.php");
  24.         echo "mierda";
  25.    
  26.     }
  27.     else
  28.     {
  29.         $mensaje = "usuario/clave no coinciden.";
  30.        
  31.     }
  32. }
  33. ?>

user.php

dentro de esta clase Usuario uso este metodo

Código PHP:
Ver original
  1. public static function autenticar($username = "", $password= "")
  2.     {
  3.         global $bd;
  4.         $username = $bd->preparar_consulta($username);
  5.         $password = $bd->preparar_consulta($password);
  6.        
  7.         $sql = "SELECT * FROM usuarios ";
  8.         $sql .= " WHERE usuario='{$username}' ";
  9.         $sql .=" AND clave='{$password}' ";
  10.         $sql .=" LIMIT 1";
  11.        
  12.         $matriz_usuarios = Usuario::buscar_por_sql($sql);
  13.         return  (!empty($matriz_usuarios)) ? array_shift($matriz_usuarios) : false ;
  14.     }