Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/02/2014, 13:29
cesa_r
 
Fecha de Ingreso: julio-2013
Mensajes: 158
Antigüedad: 11 años, 4 meses
Puntos: 6
Exclamación Funcion no crea variables de session

Hola todos que tal, bueno tengo la siguiente funcion pero al ajecutarla me duvuelve true pero no crea las sesiones, que podria ser.

Código PHP:
Ver original
  1. function login($email, $password, $mysqli) {
  2.  
  3.    if ($stmt = $mysqli->prepare("SELECT ...")) {
  4.         $stmt->bind_param('s', $email);
  5.         $stmt->execute();
  6.         $stmt->store_result();
  7.         $stmt->bind_result($user_id, $username, $db_password, $salt);
  8.         $stmt->fetch();
  9.         $password = hash('sha512', $password.$salt);
  10.         if($stmt->num_rows == 1) {
  11. if(checkbrute($user_id, $mysqli) == true) {
  12.                
  13.                 return false;
  14.         } else {
  15.         if($db_password == $password) {
  16.                 $user_browser = $_SERVER['HTTP_USER_AGENT']; //Obtén el agente de usuario del usuario
  17.                 $user_id = preg_replace("/[^0-9]+/", "", $user_id); //protección XSS ya que podemos imprimir este valor
  18.                 $_SESSION['user_id'] = $user_id;
  19.                 $_SESSION['login_string'] = hash('sha512', $password.$user_browser);
  20.              //Inicio de sesión exitosa
  21.                 return true;    
  22.         } else {
  23.                 //La conexión no es correcta
  24.                 $now = time();
  25.                 $mysqli->query("INSERT INTO ...");
  26.                 return false;
  27.         }
  28.         }
  29.         } else {
  30.         //No existe el usuario.
  31.         return false;
  32.         }
  33.    }
  34. }