Ogni volta che i dati vengono archiviati utilizzando i cookie, esiste la possibilità che un hacker inserisca alcuni dati dannosi nel computer dell’utente per danneggiare qualsiasi applicazione. Quindi è sempre consigliabile utilizzare sessioni PHP per archiviare informazioni sul server piuttosto che su un computer. Ogni volta che sono necessari dati su molte pagine di un sito Web o di un’applicazione, viene utilizzata PHP Session .
Questa sessione crea un file temporaneo in una cartella che memorizza le variabili registrate con i loro valori che vengono resi disponibili per l’intero sito web. Questa sessione termina quando l’utente si disconnette dal sito o dal browser. A ogni utente diverso vengono assegnati ID di sessione univoci collegati ai post o alle e-mail di un individuo.
<?php session_start(); echo session_id(); ?>
Nota: gli ID di sessione vengono generati casualmente dal motore PHP ed è difficile da distinguere.
Esempio: la seguente funzione PHP annulla la registrazione o cancella una variabile di sessione ogni volta che $_SESSION viene utilizzato in qualche codice. Viene utilizzato principalmente per distruggere una singola variabile di sessione.
unset($_SESSION['nome_variabile']);
<!DOCTYPE html>
<html>
<head>
<style>
body {
width: 450px;
height: 300px;
margin: 10px;
float: left;
}
.height {
height: 10px;
}
</style>
</head>
<body>
<h1 style="color:green">GeeksforGeeks</h1>
<b> PHP Unset session variables </b>
<div class="height"> </div>
<?php
// start a new session
session_start();
// Check if the session name exists
if( isset($_SESSION['name']) ) {
echo 'Session name is set.'.'<br>';
}
else {
echo 'Please set the session name !'.'<br>';
}
echo'<br>';
$_SESSION['name'] = 'John';
//unset($_SESSION['name']);
echo "Session Name : ".$_SESSION['name'].'<br>';
?>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<style>
body {
width: 450px;
height: 300px;
margin: 10px;
float: left;
}
.height {
height: 10px;
}
</style>
</head>
<body>
<h1 style="color:green">GeeksforGeeks</h1>
<b> PHP Unset session variables </b>
<div class="height"> </div>
<?php
// start a new session
session_start();
// Check if the session name exists
if( isset($_SESSION['name']) ) {
echo 'Session name is set.'.'<br>';
}
else {
echo 'Please set the session name !'.'<br>';
}
echo'<br>';
$_SESSION['name'] = 'John';
//unset($_SESSION['name']);
echo "Session Name : ".$_SESSION['name'].'<br>';
?>
</body>
</html>
Output: quando commentiamo unset($_SESSION[‘name’]) , ottieni il seguente output.
Nota: la funzione PHP session_start() è sempre scritta all’inizio di qualsiasi codice.
Quando eseguiamo unset($_SESSION[‘name’]) , rimuovendo il commento dalla riga richiesta nel programma di esempio, ottieni il seguente output.
unset($_SESSION['name']); //echo "Session Name : ".$_SESSION['name'];
Produzione:
e vuoi distruggere tutte le variabili di sessione, usa la seguente funzione PHP.
session_destroy();
Se vuoi liberare o liberare lo spazio occupato dalle variabili di sessione per altri usi, viene utilizzata la seguente funzione PHP.
session_unset();
Programma 2:
<!DOCTYPE html>
<html>
<head>
<title>Unset Session Variable </title>
</head>
<body>
<h1 style="color:green">GeeksforGeeks</h1>
<b> Unset previous session of user</b>
<?php
echo '<br>';
echo '<br>';
if(isset($_SESSION["user_name"]))
{ echo "Welcome "; echo $_SESSION["user_name"]; }
?>
<form>
Input your name here:
<input type="text" id="user_id" name="user_id">
<input type=submit value=Submit>
</form>
<form action="#">
<input type="submit" name="submit"
value="Unset"
onclick="UnsetPreviousSession()">
</form>
<?php
session_start();
if(!isset($_SESSION["user_name"]) && (!empty($_GET['user_id'])))
{
$_SESSION["user_name"] = $_GET["user_id"];
}
else
{
UnsetPreviousSession();
}
function UnsetPreviousSession()
{
unset($_SESSION['user_name']);
}
?>
</body>
</html>
