Foros del Web » Programando para Internet » PHP »

logout imposible en ie

Estas en el tema de logout imposible en ie en el foro de PHP en Foros del Web. Hola... este es mi primer post asi que aprovecho para saludarlos a todos.. ;) mi problema es el siguiente: quiero permitir un logout pero con ...
  #1 (permalink)  
Antiguo 26/04/2008, 09:37
 
Fecha de Ingreso: abril-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
logout imposible en ie

Hola... este es mi primer post asi que aprovecho para saludarlos a todos.. ;)

mi problema es el siguiente:

quiero permitir un logout pero con una advertencia antes de salir... el link se muestra asi...

Código HTML:
<a href="#" onclick="javascript:logout();">Cerrar Sesión</a> 
el javascript esta asi

Código:
function logout(){
	if(confirm("¿Está seguro de querer cerrar su sesión?")){
		window.location='shared/login.php?accion=logout';
	}
}
y bueno... donde esta el problema se preguntarán... y está en lo siguiente:
el codigo funciona bien, pero cuando quiero regresar a la pagina original no me deja... o sea, para volver a la pagina donde estaba el usuario le digo en el LOGIN.PHP
Código PHP:
/* procedimiento de logout ... session_destroy bla bla bla */

header("Location: ".$_SERVER["HTTP_REFERER"]); 
pero no quiere agarrar la pagina previa como el referer... no se por que... directamente el referer no existe... quise imprimirlo y la variable no pasa... Si lo uso por FORM no me hace problema, porque el mismo archivo permite el login de usuarios... e inclusive vuelve a la pagina donde estaba el usuario, pero al querer hacer el logout por un simple link con referencia a un script java, se hace de la loca y se queda en la carpeta SHARED... y solo ocurre con el IE, el 6 para ser mas especificos... en el firefox, como siempre, funciona de maravillas... sera que me pueden dar una mano???

gracias y exitos gente!! un abrazo
  #2 (permalink)  
Antiguo 27/04/2008, 03:09
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: logout imposible en ie

Hola metamorpher

Muevo el mensaje al foro de PHP, creo que allí podrán ayudarte mejor.

Movido desde JavaScript.

Saludos,
  #3 (permalink)  
Antiguo 27/04/2008, 04:34
 
Fecha de Ingreso: agosto-2005
Ubicación: Valencia
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 1
Re: logout imposible en ie

Para resolver esto deberías enviar la dirección de retorno al script PHP.
Para ello en la llamada a la función javascript, como parámetro, pasas la dirección actual en la que se encuentra el usuario en ese momento. Esto lo puedes hacer durante la ejecución de la página actual. Por ejemplo:

El usuario solicita login.php

Cuando se ejecuta la página, se construye una llamada a una funcion javascript, con el parámetro de retorno que puedes poner manualmente, ya que, al construirla desde el script login.php sabes en que página te encuentras y puedes simplemente referenciar a este mismo script como retorno.

La función javascript pasa el parametro al script PHP como parametro de URL.

Se ejecutan las funciones de PHP y se hace una llamada a la funcion header() pasándole como url el valor, la url que pasaste en la llamada al script

Espero que te sirva.
__________________
Quien a buen árbol se arrima, buena sombra le cobija. :aplauso:

http://dbtrucos.com
  #4 (permalink)  
Antiguo 27/04/2008, 09:28
 
Fecha de Ingreso: abril-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Re: logout imposible en ie

eso es justamente lo que hacia antes, con el REQUEST_URI, para hacerlo de manera mas automatica, sin necesidad de hacerlo manualmente, porque en realidad este es un portal grande... ya que el referer es una variable de servidor, es raro que no quiera pasar... el firefox y el opera lo utilizan de maravillas... el drama se presenta en IE, por eso creo que el problema esta en jscript... por que en firefox el retorno no interfiere el HTTP_REFERER, sin embargo en IE 6 si interfiere...

queria saber nomas si me podian ayudar en eso, igual agradezco sus comentarios... un saludo en la distancia ;)
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 20:30.