Hola a todos,
MI función para realizar el inicio de sesion es:
public function authenticate($attribute,$params)
{
if(!$this->hasErrors()) // we only want to authenticate when no input errors
{
$identity=new UserIdentity($this->email,md5($this->password));
$identity->authenticate();
switch($identity->errorCode)
{
case UserIdentity::ERROR_NONE:
$duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days
Yii::app()->user->login($identity,$duration);
break;
case UserIdentity::ERROR_USERNAME_INVALID:
$this->addError('email','Email no válido.');
break;
default: // UserIdentity::ERROR_PASSWORD_INVALID
$this->addError('password','Contraseña incorrecta.');
break;
}
}
}
El caso es que si uso un valor para $duration mayor que 0 todo funciona correctamente, pero si le indico como valor 0, no inicia la sessión.
He comprobado la configuración de las sessiones en php y no noto nada raró. ¿Alguien sabe de que se puede tratar?