variable start print ejemplo destruir php session

start - PHP Unset Session Variable



session start php login (5)

Soy un programador noob, así que me disculpo por adelantado por cualquier error obvio. He pasado la semana pasada creando algo en la base de datos de productos. También tengo el punto en el que puedo agregar productos usando un formulario, ver todos los productos agregados, etc. Estoy usando sesiones que se crean a través de los datos de entrada del formulario. Tengo dificultades para incluir el funcionamiento de una página de eliminación de producto, he intentado usar unset para borrar la variable pero no puedo hacer que funcione demasiado.

AGREGAR página de producto que establece la variable de sesión:

$_SESSION[''Products''][] = $_POST; //is how i set the session on the add products page. unset $_SESSION[''Products''][]; //is how i have tried to clear the session although it does not work.

Cualquier punto en la dirección correcta será apreciado!


Incluyo esta respuesta en caso de que alguien venga a esta página por el mismo motivo que yo. Acabo de perder una vergüenza de tiempo tratando de localizar el problema. Yo estaba llamando:

unset($_SESSION[''myVar'']);

desde un script de cierre de sesión. Luego, navegando a una página que requería inicio de sesión, y el servidor aún pensaba que estaba conectado. El problema era que el script de cierre de sesión no estaba llamando:

session_start();

Desactivar una sesión var NO FUNCIONA a menos que inicie la sesión primero.


Puedes desarmar la variable de sesión usando:

  1. session_unset - Libera todas las variables de sesión (es igual a usar: $_SESSION = array(); )
  2. unset($_SESSION[''Products'']); - Anular solo el índice de productos en la variable de sesión. ( Recuerda : tienes que usarlo como una función, no como lo usaste)
  3. session_destroy - Destruye todos los datos registrados en una sesión

Para saber la diferencia entre usar session_unset y session_destroy , lea esta respuesta SO . Eso ayuda.


Si quieres borrar completamente la sesión puedes usar esto:

session_unset(); session_destroy();

En realidad ambos no son necesarios pero no duele.

Si desea borrar solo una parte específica, creo que necesita esto:

unset($_SESSION[''Products'']); //or $_SESSION[''Products''] = "";

Dependiendo de lo que necesites.


Unset es una función. Por lo tanto tienes que enviar qué variable tiene que ser destruida.

unset($var);

En tu caso

unset ($_SESSION["products"]);

Si necesita restablecer toda la variable de sesión solo llame

session_destroy ();


unset es una función, no un operador. Úselo como unset($_SESSION[''key'']); para borrar esa clave de sesión. Sin embargo, puedes usar session_destroy(); también. (Asegúrate de iniciar la sesión con session_start(); también)