Foros del Web » Programando para Internet » PHP »

Deslogearse

Estas en el tema de Deslogearse en el foro de PHP en Foros del Web. Hola amigos, les comento mi problema. resulta que cuando un usuario se deslogea va a una pagina que lo redirecciona a la pagina principal que ...
  #1 (permalink)  
Antiguo 05/11/2007, 12:37
Avatar de juanleonardo  
Fecha de Ingreso: agosto-2007
Mensajes: 382
Antigüedad: 16 años, 8 meses
Puntos: 0
Deslogearse

Hola amigos, les comento mi problema.
resulta que cuando un usuario se deslogea va a una pagina que lo redirecciona a la pagina principal que tiene el siguiente codigo para deslogearse
<?php
session_start();
$result = session_unregister("mi_sesion");
session_destroy();
?>

y quieo agregar el sgte codigo, para que cuando valla al index se siga manteniendo el idioma que se selecciono:
if ($_SESSION['idioma']=='espaniol')
include ("Lenguajes/espaniol.php");
else
include ("Lenguajes/ingles.php");}

Como lo puedo hacer.
Gracias por la ayuda
  #2 (permalink)  
Antiguo 05/11/2007, 12:52
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 3 meses
Puntos: 81
Re: Deslogearse

Trata de hacerlo con el metodo de la burbuja.

Por ejemplo:
Código PHP:
<?php
session_start
(); 
$tmp $_SESSION['idioma'];
$result session_unregister("mi_sesion"); 
session_destroy();
$_SESSION['idioma'] = $tmp;
?>
Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 05/11/2007, 15:57
Avatar de juanleonardo  
Fecha de Ingreso: agosto-2007
Mensajes: 382
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Deslogearse

Gracias marvin, lo prove pero me da el mismo error, que no existe la variable.
  #4 (permalink)  
Antiguo 05/11/2007, 21:02
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 3 meses
Puntos: 81
Re: Deslogearse

Mmm... q raro... lo acabo de testear y funciona.

Hazle un echo a tu variable idioma antes de destruirla para saber si viene con datos.

Suerte
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 06/11/2007, 19:34
Avatar de juanleonardo  
Fecha de Ingreso: agosto-2007
Mensajes: 382
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Deslogearse

Cuando se deslogea hago

Cita:
<?php
session_start();
echo $_SESSION['idioma'] /*si me devuelve lo que tiene*/
$tmp = $_SESSION['idioma'];
$result = session_unregister("mi_sesion");
session_destroy();
$_SESSION['idioma'] = $tmp;
?>
luego la pagina se redirecciona la principal y me aparece el siguiente error cuando hago
Notice: Undefined index: mi_sesion in c:\archivos de programa\easyphp1-8\www\web\1- index.php on line 3

Gracias por la ayuda
  #6 (permalink)  
Antiguo 06/11/2007, 19:50
 
Fecha de Ingreso: noviembre-2007
Mensajes: 157
Antigüedad: 16 años, 6 meses
Puntos: 3
Re: Deslogearse

No te hace falta el session_unregister, pues te vas a otra página ya.

En la página index, asegúrate de colocar la función session_start(); antes de realizar cualquier salida al navegador.
  #7 (permalink)  
Antiguo 07/11/2007, 06:46
Avatar de juanleonardo  
Fecha de Ingreso: agosto-2007
Mensajes: 382
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Deslogearse

Lo probe pero tampoco esta andando:
Hice esto
session_start();
$idi=$_SESSION['idioma'];
session_destroy();
$_SESSION['idioma']=$idi;


no se si sera la pagina index el problema, les dejo el codigo inicial:
Cita:
session_start();


if (isset($_GET['lang'])){
$idio=$_GET['lang'];
$_SESSION['idioma']=$idio;
if ($idio=='espaniol')
include ("Lenguajes/espaniol.php");
else
include ("Lenguajes/ingles.php");}
else
if (isset($_SESSION['idioma'])){
if ($_SESSION['idioma']=='espaniol')
include ("Lenguajes/espaniol.php");
else
include ("Lenguajes/ingles.php");}
else
echo "no existe la variable sesion";
Gracias por la ayuda y perdon por las molestias
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 12:39.