Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/04/2013, 14:41
Avatar de dashtrash
dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: grandes cuestiones: destruir variables de sesion + globals + session_unset

Cita:
Iniciado por guardarmicorreo Ver Mensaje
y lo que quiero es darle al usuario la posibilidad de que si se desloguea solo borre su sesion de usuario, no su sesion del carrito de compra.
No hay una "sesion de usuario" y una "sesion de carrito".Hay una sesión.
Suponiendo que pudieras borrar la sesion de usuario, y no de su carrito...Cómo
sabrías de quién es el carrito?
Antes de destruir la sesión, guarda en base de datos el carrito.

Cita:
Iniciado por guardarmicorreo Ver Mensaje
en la documentación de php me recomienda que si utilizo $_SESSION es mejor borrar sesiones específicas, efectivamente era lo que yo buscaba.
No sé dónde has leído sobre "sesiones específicas".

Cita:
Iniciado por guardarmicorreo Ver Mensaje
deducí que ese era el error, que al borrar $_SESSION("usuario"); dentro de una función estaba borrando un $_SESSION local y no el global.
$_SESSION no es ni global ni local.Es una superglobal.Puedes usarla en cualquier
sitio, como una global, sin especificar su ámbito, como una local.

Cita:
Iniciado por guardarmicorreo Ver Mensaje
¿es acertado borrar la variable $_SESSION["usuario"] con unset($GLOBAL("usuario"))?
No.Usa $_SESSION.

Cita:
Iniciado por guardarmicorreo Ver Mensaje
¿si la variable $_SESSION["usuario"] la creé a partir de un valor obtenido por consulta a mysql dentro de una función cómo es que pasa a ser global y no local?
Porque ese valor se lo has asignado a una variable superglobal.