Foros del Web » Programando para Internet » PHP »

CodeIgniter Problema PHP login sesiones

Estas en el tema de Problema PHP login sesiones en el foro de PHP en Foros del Web. Saludos Tengo un problema que no consigo resolver. Estoy desarrollando un pequeño programa de ayuda online en el que debes iniciar sesión primero ya que ...
  #1 (permalink)  
Antiguo 01/03/2012, 04:17
Avatar de Aronofsky  
Fecha de Ingreso: marzo-2011
Ubicación: Murcia
Mensajes: 12
Antigüedad: 13 años, 1 mes
Puntos: 1
Problema PHP login sesiones

Saludos

Tengo un problema que no consigo resolver. Estoy desarrollando un pequeño programa de ayuda online en el que debes iniciar sesión primero ya que solo es para una serie de usuarios registrados.

El problema es que cuando inicio sesión en local funciona perfectamente pero en el servidor no

Lo estoy haciendo con CodeIgniter por lo que hay una vista login.php que es simplemente un cuadro de usuarios y contraseña.

Os pego el trozo de código del controlador main.php donde está la parte del login, que es donde supongo estara el fallo:


public function login(){
$fondo=array('fondo'=>2);
$this->load->view('template/header.php',$fondo);
$this->load->view('login.php');
$this->load->view('template/footer.php');
}

public function loguear(){
$this->database->islogin($_POST['user'],sha1($_POST['pass']));
?><script type="text/javascript">window.location="listado";</script> <?php
}
public function listado($opcion){
if($this->is_logged_in()){
$fondo=array('fondo'=>2);
$datos=array('opcion'=>$opcion);
$this->load->view('template/header.php',$fondo);
$this->load->view('listado.php',$datos);
$this->load->view('template/footer.php');
}
else{
echo "<script type=\"text/javascript\">alert(\"El usuario o contraseña no son correctos\");</script>";
?><script type="text/javascript">window.location="login";</script> <?php
}
}

function is_logged_in(){
session_start();
if ($_SESSION['username']){
return TRUE;
}
else{
return FALSE;
}
}

Pues eso, en local funciona pero en el servidor me sale la alerta de "El usuario o contraseña no son correctos". No es problema de la base de datos ya que está creada en ambos sitios. Yo pienso que podría ser un problema de cookies o de la configuración php de cada servidor, pero aún así no consigo localizar el problema.

Si alguién pudiera comentar algo se lo agradacería. Muchas gracias de todas formas
  #2 (permalink)  
Antiguo 02/03/2012, 01:40
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Problema PHP login sesiones

El código que posteas es un poco extraño, no conozco el framework que menciones pero te hago un comentario. Dices que siempre te da El usuario o contraseña no son correctos, efectivamente el if($this->is_logged_in()) falla. Si devuelve false es porque $_SESSION['username'] es false o bien falla session_start(). Casi seguro es lo primero.
Prueba con esto

Código PHP:
Ver original
  1. function is_logged_in(){
  2.     session_start() or die('Imposible iniciar session');
  3.     if (isset($_SESSION['username']){
  4.         return TRUE;
  5.     }
  6.     else{
  7.         print_r($_SESSION);
  8.         die();
  9.     }
  10. }

La verdad que el código es bastante malo para ser un framework.
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: codeigniter, login, sesiones, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:59.