sessions - php unset a variable




PHP Unset Session Variable (4)

È possibile annullare l'impostazione della variabile di sessione utilizzando:

  1. session_unset - Libera tutte le variabili di sessione (È uguale all'utilizzo di: $_SESSION = array(); )
  2. unset($_SESSION['Products']); - Annulla solo l'indice dei prodotti nella variabile di sessione. ( Ricorda : devi usare come una funzione, non come hai usato)
  3. session_destroy - Distrugge tutti i dati registrati in una sessione

Per conoscere la differenza tra l'uso di session_unset e session_destroy , leggi questa risposta SO . Questo aiuta.

Sono un programmatore noob quindi mi scuso in anticipo per eventuali errori evidenti. Ho passato la settimana passata a creare un database di prodotti come una cosa. Ho anche il punto in cui posso aggiungere prodotti utilizzando un modulo, visualizzare tutti i prodotti aggiunti, ecc. Sto utilizzando sessioni create tramite i dati di input del modulo. Sto facendo fatica a includere una pagina di prodotto di eliminazione funzionante, ho provato a usare unset per cancellare la variabile ma non riesco a farlo funzionare troppo.

AGGIUNGI la pagina del prodotto che imposta la variabile di sessione:

$_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.

Ogni punto nella giusta direzione sarà apprezzato!


Se vuoi cancellare completamente la sessione puoi usare questo:

session_unset();
session_destroy();

In realtà entrambi non sono necessari, ma non fa male.

Se vuoi cancellare solo una parte specifica penso che ti serva:

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

a seconda di cosa hai bisogno.


Unset è una funzione. Pertanto devi inviare quale variabile deve essere distrutta.

unset($var);

Nel tuo caso

unset ($_SESSION["products"]);

Se è necessario reimpostare l'intera variabile di sessione, basta chiamare

session_destroy ();

unset è una funzione, non un operatore. Usalo come unset($_SESSION['key']); per disabilitare la chiave di sessione. Tuttavia, puoi usare session_destroy(); anche. (Assicurati di avviare la sessione anche con session_start(); )







session