Foros del Web » Programando para Internet » PHP »

Finalizar correctamente session_start()

Estas en el tema de Finalizar correctamente session_start() en el foro de PHP en Foros del Web. He hecho un login mediante el uso de sesiones y el problema esque cuando intento usar el archivo para desloguear y me dice que he ...
  #1 (permalink)  
Antiguo 19/07/2009, 01:51
 
Fecha de Ingreso: abril-2009
Mensajes: 56
Antigüedad: 15 años
Puntos: 0
Finalizar correctamente session_start()

He hecho un login mediante el uso de sesiones y el problema esque cuando intento usar el archivo para desloguear y me dice que he deslogueado no es así ya que si vuelvo al panel sigo logueado sin problemas.

En el archivo primero hago unset y luego session_destroy(). El orden es incorrecto o tengo que hacer algo más?
  #2 (permalink)  
Antiguo 19/07/2009, 02:42
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 14 años, 9 meses
Puntos: 6
Respuesta: Finalizar correctamente session_start()

Hola beng, por lo que comentas estás haciendo lo correcto, seguramente tengas algún error en la programacion que vuelve a ponerte las variables SESSION.

Cita:
Iniciado por beng Ver Mensaje
He hecho un login mediante el uso de sesiones y el problema esque cuando intento usar el archivo para desloguear y me dice que he deslogueado no es así ya que si vuelvo al panel sigo logueado sin problemas.

En el archivo primero hago unset y luego session_destroy(). El orden es incorrecto o tengo que hacer algo más?
  #3 (permalink)  
Antiguo 19/07/2009, 03:28
 
Fecha de Ingreso: abril-2009
Mensajes: 56
Antigüedad: 15 años
Puntos: 0
Respuesta: Finalizar correctamente session_start()

Lo tengo en un archivo separado:
<?php

unset($_SESSION['id']);
unset($_SESSION['nombre']);

session_destroy();
echo'Has salido correctamente';

?>

Lo que dices de volver a poner, solo pasar por un archivo que poner session_start() ya las vuelve a poner?

Esque en los sitios de seguridad creo que lo tengo así.
  #4 (permalink)  
Antiguo 19/07/2009, 03:39
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 14 años, 9 meses
Puntos: 6
Respuesta: Finalizar correctamente session_start()

Por lo que puedo observar te falta poner session_start() antes de utilizar unset.

Cita:
Iniciado por beng Ver Mensaje
Lo tengo en un archivo separado:
<?php

unset($_SESSION['id']);
unset($_SESSION['nombre']);

session_destroy();
echo'Has salido correctamente';

?>

Lo que dices de volver a poner, solo pasar por un archivo que poner session_start() ya las vuelve a poner?

Esque en los sitios de seguridad creo que lo tengo así.
  #5 (permalink)  
Antiguo 19/07/2009, 05:29
 
Fecha de Ingreso: abril-2009
Mensajes: 56
Antigüedad: 15 años
Puntos: 0
Respuesta: Finalizar correctamente session_start()

Ok gracias ahora si que sale de verdad.
Otra duda que tengo, una vez inicio sesión, en algunos sitios he puesto que muestre uno de los $_SESSION[ pero no lo hace, también debo poner session_Start al inicio?
  #6 (permalink)  
Antiguo 19/07/2009, 07:25
 
Fecha de Ingreso: diciembre-2006
Mensajes: 153
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: Finalizar correctamente session_start()

Cita:
Iniciado por beng Ver Mensaje
Ok gracias ahora si que sale de verdad.
Otra duda que tengo, una vez inicio sesión, en algunos sitios he puesto que muestre uno de los $_SESSION[ pero no lo hace, también debo poner session_Start al inicio?
todas las paginas en las que vayas a hacer uso de sesiones deben tener session_start(); al inicio de la pagina..

sea para mostrarla o eliminarla.


si quieres por ejemplo mostrar el nombre de usuario

haces un echo de la session:

Código PHP:
<? echo $_SESSION["NOMBRE_USUARIO"];?>

saludos
  #7 (permalink)  
Antiguo 19/07/2009, 20:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Finalizar correctamente session_start()

Recuerda que session_start() sirve para iniciar la sesión en el script actual, no es para iniciar la sesión globalmente, solo es válido para el script actual.

Saludos.
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 01:30.