qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP...

13
qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw ertyuiopasdfghjklzxcvbnmqwer tyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiop asdfghjklzxcvbnmqwertyuiopas dfghjklzxcvbnmqwertyuiopasdf ghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnm Sommario Le Sessioni in PHP .......................................................................................................................................1 session_start() ................................................................................................................................................2 Esempio 0 - Come creare pagine protette. ....................................................................................................2 ESEMPIO 1 - autenticazione con login e password ........................................................................................5 ESEMPIO 2 - scheletro di un sito che simula degli acquisti online .................................................................8 qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw ertyuiopasdfghjklzxcvbnmqwer Le sessioni in PHP Raccolta di note con esercizi Rel 151202 paolo macchi

Transcript of qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP...

Page 1: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

qwertyuiopasdfghjklzxcvbnmq

wertyuiopasdfghjklzxcvbnmqw

ertyuiopasdfghjklzxcvbnmqwer

tyuiopasdfghjklzxcvbnmqwerty

uiopasdfghjklzxcvbnmqwertyui

opasdfghjklzxcvbnmqwertyuiop

asdfghjklzxcvbnmqwertyuiopas

dfghjklzxcvbnmqwertyuiopasdf

ghjklzxcvbnmqwertyuiopasdfgh

jklzxcvbnm Sommario

Le Sessioni in PHP ....................................................................................................................................... 1

session_start() ................................................................................................................................................ 2

Esempio 0 - Come creare pagine protette. .................................................................................................... 2

ESEMPIO 1 - autenticazione con login e password ........................................................................................ 5

ESEMPIO 2 - scheletro di un sito che simula degli acquisti online ................................................................. 8

qwertyuiopasdfghjklzxcvbnmq

wertyuiopasdfghjklzxcvbnmqw

ertyuiopasdfghjklzxcvbnmqwer

Le sessioni in PHP

Raccolta di note con esercizi

Rel 151202

paolo macchi

Page 2: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 1

Le Sessioni in PHP (remixato da documenti presenti in rete)

Un sistema di memorizzazione di informazioni è offerto dall'utilizzo delle sessioni.

A differenza dei cookie le sessioni non scrivono nulla sul computer dell’utente, ma operano sul server

creando degli specifici file dove vengono salvati alcuni dati importanti relativamente alla sessione di

navigazione del nostro utente. Una volta che la sessione sarà terminata il file con i dati della sessione stessa

verrà eliminato. Una sessione termina nel momento in cui l'utente chiude il browser (o in un diverso

momento eventualmente specificato nelle impostazioni del server o nel codice dell'applicazione).

Una sessione è un modo per memorizzare le informazioni ( in variabili ) da utilizzare

su più pagine . A differenza di un cookie , l'informazione non viene memorizzata sul

computer dell'utente

Le sessioni vengono utilizzate, ad esempio, nella gestione delle autenticazioni (login) degli utenti che, una

volta loggati, verranno identificati come tali da tutte le pagine (.php) del sito.

La prima cosa da fare se vogliamo lavorare con le sessioni è impostare nel file di configurazione del PHP

("php.ini") la direttiva session.save_path, indicando la directory nella quale verranno salvate le informazioni

sulle sessioni dei nostri utenti.

Cookie ( RFC 2109)

I primi cookie risalgono al 1994 utilizzati nel sito di Netscape. Un cookie è un piccolo file (o una stringa) che non supera i 4Kbyte

(ma i superkookie del Flash possono arrivare a 100Kbyte contro i 5Mbyte dell’HTML5!), inviati dal server di un sito e archiviati

nel browser in una directory del disco del client. Non è un programma eseguibile e non può trasportare virus e funziona in

questo modo:

Il server a cui ci colleghiamo memorizza sul nostro hard disk il cookie

Nel cookie è contenuto il nostro numero identificativo, quali aree del sito abbiamo visitato e, magari, anche la nostra email che

abbiamo lasciato

Al successivo collegamento, il server controllerà il cookie sul disco e disporrà dei nostri dati ricordandosi di chi sono e cosa ho

fatto

In questo modo potrebbero comparire banner mirati o personalizzazioni di pagine web o mostrare cosa è stato inserito nel

carrello della spesa nel precedente accesso al sito

Ogni cookie può contenere fino a cinque campi:

Dominio. Indica da dove proviene. Il browser dovrebbe verificare che i server non mentano!

Path . Percorso nella struttura delle directory del server per identificare quale parte della struttura del server può utilizzare il

cookie. Se è /, si intende l’intera struttura.

Content. (contenuto). Nella forma nome=valore. Sia nome sia valore sono qualsiasi scelti dal server

Expires (scadenza) data/ora, specifica quando scade il cookie. Se è assente è scartato alla chiusura (cookie non persistente).

Secure Impostato per indicare che il browser può restituire il cookie solo a un server sicuro. (e-commerce, remote banking,…)

Il browser, prima di inviare una richiesta di pagina a un sito, controlla nella directory dei cookie, se ci sono cookie inseriti dal

dominio a cui si sta rivolgendo. Se ci sono, allora tali cookie vengono inclusi nel messaggio di richiesta. Il server li riceve e li

interpreta. E’ possibile configurare il client per rifiutarli, ma poi non funzionano le applicazioni che necessitano del loro utilizzo!

Page 3: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 2

session_start()

La funzione da utilizzare poi all'interno delle nostre pagine .php per aprire una sessione è session_start().

Questa funzione non prevede parametri.

La funzione session_start() deve essere necessariamente utilizzata prima dell'invio di output.

Facciamo un esempio per vedere, in concreto, come funziona session_start().

Poniamo di voler aprire una sessione dove salvare username e password del nostro utente (dati che ci sono

stati forniti tramite un form di login). Ecco il codice:

<?php

//Apro la sessione e...

session_start();

//Recupero username e password dal form

$username = $_POST['user'];

$password = $_POST['pass'];

//Salvo i dati nella variabile (array) globale $_SESSION

$_SESSION['username'] = $username;

$_SESSION['password'] = $password;

?>

A questo punto abbiamo salvato all'interno della nostra sessione (grazie alla variabile globale $_SESSION) due diversi valori:

username e password.

Nelle successive pagine .php sarà molto semplice recuperare questi valori, ecco un esempio:

<?php

//Apro la sessione e...

session_start();

//Recupero i dati nell’array di sessione

$username = $_SESSION['username'];

$password = $_SESSION['password'];

//facciamo una stampata a video!

echo "Ciao " . $username . " la tua password è " . $password;

?>

Per finire vediamo come eliminare una sessione (ad esempio a seguito di logout).

//Per eliminare una specifica variabile di sessione useremo:

unset($_SESSION['username']);

//Per eliminare tutte le variabili di sessione useremo:

$_SESSION = array();

Esempio 0 - Come creare pagine protette.

Vediamo come sfruttare le potenzialità delle sessioni, ad esempio per renderci il lavoro più facile se

abbiamo bisogno di portarci dietro, in diverse pagine, un alto numero di variabili.

Le sessioni sono piccoli file di testo server side, ovvero salvati direttamente sul server che fa girare gli script,

che possono contenere qualsiasi cosa noi vogliamo, per esempio variabili o dati in generale.

NOTA

Page 4: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 3

A questo proposito, se volete usare le sessioni in locale, accertatevi di creare una cartella di nome "tmp" nel vostro hard disk.

Generalmente il percorso di tale cartella sarà C:\tmp, ma se preferite un'altra posizione non c'è alcun problema: aprite il vostro

php.ini (è salvato in c:\windows o c:\winnt a seconda delle versioni di windows), cercate la riga "session.save_path = /tmp" e

modificatela con il il percorso che preferite...

Passiamo adesso alla sintassi: all'inizio di ogni pagina in cui vorrete usare le sessioni dovrete aggiungere la riga

session start();

che serve appunto a creare una sessione. Fatto? Non ci crederete, ma abbiamo già finito.

Adesso vi basterà scrivere:

$_SESSION['prova'] = "Ciao";

oppure:

$prova = "ciao"; session_register('prova');

affinchè in ogni vostra pagina la variabile di sessione "prova" abbia il valore "Ciao".

Dov'è l'utilità di tutto ciò? Pensiamo per esempio ad un utente che inserisce dei dati in form. Tali dati verranno poi controllati

dallo script per evitare che ci siano errori, per esempio indirizzi email in formato non valido, date di nascita fasulle o password

che non combaciano.

In caso di errore sarebbe bello poter evitare all'utente di riempire nuovamente tutti i campi, e con le sessioni possiamo appunto

realizzare questo. Certo, potremmo passare i dati del form tramite i metodi GET e POST, ma perchè avere un indirizzo

chilometrico e rischiare infiltrazioni?

Vediamo adesso con un semplice script di usare le sessioni.

Si tratta di un modello MOLTO esemplificato di come creare delle pagine del sito nelle quali solo noi

possiamo entrare.

La pagina "form.htm" contiene un semplice form, che tramite il metodo POST passa alla pagina

"controlla.php" due variabili, rispettivamente username e password. Questo il contenuto della nostra

pagina "form.htm":

<form name="login" action="controlla.php" method="POST">

<input type="text" name="username" value="Username..."><br>

<input type="text" name="password" value="Password..."><br>

<input type="submit" value="Login...">

</form>

Questa la nostra applicazione PHP (che chiameremo "controlla.php"):

La pagina "controlla.php" si limita a controllare che i valori immessi nel form corrispondano a due valori da

noi scelti.

<?

$user = "paolo";

$pass = "poldo";

if ($_POST['username'] == $user && $_POST['password'] == $pass) { // user e pass corrette

session_start();

$_SESSION['login'] = "ok"; // sessione login ok

} else {

header("Location: form.htm");

}

?>

Page 5: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 4

La pagina "inclusione.php" è il cuore del sistema, e dovrà essere inclusa in tutte le pagine (PHP) che vorrete

proteggere, inserendo all'inizio della pagina una riga del tipo:

include("inclusione.inc.php");

Il codice della pagina si limita ad aprire una sessione, e a controllare che la variabile di sessione login abbia

il valore "ok"; se tale variabile non esiste o non ha il valore desiderato, il visitatore è rimandato alla pagina

del form, ovvero "form.htm".

<?

session_start();

if ($_SESSION['login'] != "ok") {

header("Location: form.htm");

}

?>

Page 6: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 5

ESEMPIO 1 - autenticazione con login e password

Index.php

<html>

<head>

<title>Login </title>

<link rel="stylesheet" href="css.css">

</head>

<body>

<div id="container">

<?php

$utente= "UTENTE:";

$pass="PASSWORD";

echo "<FORM ACTION = 'pag2.php?provenienza=1' method='post'>";

echo "Utente"."<input type='text' name='utente'size='20' value=''> <br>";

echo "Password"."<input type='password' name='pass'size='20' value=''> <br>";

echo "<INPUT TYPE=submit value='Ok'>";

echo "</FORM>";

echo "<FORM ACTION = 'pag3.html' method='post'>";

echo "<INPUT TYPE=submit value='Registrati'>";

echo "</FORM>";

?>

</div>

</body>

</head>

Page 7: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 6

</html>

Page2.php

<?php

session_start();

?>

<html>

<head>

<title>Login </title>

</head>

<body>

<?php

$login["Luca"]="ciao";

$login["Andrea"]="hello";

//Recupero username e password dal form

$username = $_POST['utente'];

$password = $_POST['pass'];

$trovato=false;

reset($login);

while(list($ElementKey, $Element) = each($login))

{

if($ElementKey==$username && $Element==$password)

{

$_SESSION['username'] = $username;

$_SESSION['password'] = $password;

echo "Benvenuto". $username;

$trovato=true;

echo "<FORM ACTION = 'pag4.php' method='post'>";

echo "<INPUT TYPE=submit value='Continua'>";

echo "</FORM>";

break;

}

}

if($trovato==false)

{

echo "Utente non registrato. Devi registrarti";

echo "<FORM ACTION = 'pag2.php' method='post'>";

echo "<INPUT TYPE=submit value='Registrati'>";

echo "</FORM>";

}

?>

</body>

</head>

</html>

page4.php

<?php

session_start();

Page 8: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 7

?>

<html>

<head>

<title>Login </title>

<script language ="javascript">

function controllaMail(){

var pattern = new RegExp("^([a-zA-Z0-9._%-])+@([a-zA-Z0-9.-])+\.[a-zA-Z]{2,4}$");

var txtMail = document.getElementById("email");

if (txtMail.value.search(pattern)== -1) {

alert("Il valore inserito non è indirizzo mail valido");

txtMail.focus();

} else {

alert("Indirizzo mail valido");

}

}

</script>

</head>

<body>

<?php

$user=$_SESSION['username'];

echo "Benvenuto ".$user ."<br>";

echo "Inserisci la tua e-mail";

echo "<br> <br>";

?>

<form method='post' action='pag4.php'>

Inserisci il tuo indirizzo e-mail

<INPUT name="email" type="text" id="email"></br>

<INPUT type="submit" value="OK" onclick="controllaMail()">

</form>

</body>

</head>

</html>

Page3.html (registrazione)

<html>

<head>

<title>Login </title>

<script type="text/javascript">

function fcontrolla(){

var txtPass1 = document.getElementById("passw").value;

var txtPass2 = document.getElementById("passw2").value;

if (txtPass1==txtPass2)

{

var percorso="pag2.php?provenienza=3&utente="+document.getElementById("nome").value+"&pass="+txtPass1;

alert(percorso);

document.location.href = "pag2.php?provenienza=3&utente="+document.getElementById("nome").value+"&pass="+txtPass1;

} else {

alert("Le due password non coincidono");

document.getElementById("passw").value=" ";

document.getElementById("passw2").value=" ";

}

}

</script>

Page 9: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 8

</head>

<body>

<FORM method='post'>

Utente <input type='text' name='nome'size='20' value=''> <br>

Password <input type='password' id='passw'size='20' value=''> <br>

Conferma Password<input type='password' id='passw2'size='20' value=''> <br>

<INPUT TYPE=button value='Registrati'onclick="fcontrolla()">

</FORM>

</body>

</head>

</html>

ESEMPIO 2 - scheletro di un sito che simula degli acquisti online

L’esercizio mostra un’applicazione client-server che simula un’acquisto on line con un carrello elettronico.

I prodotti vengono scelti tra quelli mostrati in vetrina e inseriti nel carrello elettronico fino ad arrivare al

loro pagamento in cassa.

L’esercizio è volutamente sintetico: il suo scopo, infatti, è quello di far vedere lo scheletro di

un’applicazione che non perde le informazioni nel passaggio da una pagina Web alla successiva. A questo

proposito si sfruttano session e coockie per superare la “smemoratezza” del protocollo HTTP che, per sua

natura è stateless e non “ricorda” cosa ha fatto in precedenza.

La successione delle operazioni prevede i seguenti passi:

Passo 1. Richiesta delle credenziali per l’accesso agli acquisti

Passo 2. Controllo del nome utente e avvio sessione

Passo 3. Acquisto dei prodotti presenti nel reparto alimentari

Passo 4. Acquisto dei prodotti tecnologici

Passo 5. Riepilogo del conto

Passo 6. Emissione dello scontrino e chiusura della sessione

NOTA Se si volessero conservare le informazioni in modo permanente sarebbe necessario ricorrere a un

database per la memorizzazione dei prodotti e degli utenti ma, non dovrebbe risultare difficile, aggiungerlo.

- Passo 1 (index.php) - Richiesta delle credenziali per l’accesso agli acquisti (fig.1)

Per accedere agli acquisti occorre essere registrati. Il form richiede di inserire il nome utente che, tramite il metodo POST, viene

inoltrato al programma che ne controlla la validità (check.php):

<html>

<head>

<title>Acquista il prodotto - Passo 1: Credenziali</title>

Page 10: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 9

</head>

<body>

<h1> Passo 1: Credenziali </h1>

<form action='check.php' method='post'>

Inserisci il nome utente: <input type='text' name='user' />

<input type='submit' value='Entra' />

</form>

</body>

</html>

- Passo 2 (check.php) - Controllo nome utente (fig. 2)

Compito del programma è quello di controllare se un utente è registrato e, in questo caso, di permettere

l’accesso agli acquisti.

Il controllo è fatto sull’array $utenti che ha come elementi 'user1' 'user2’ (a cui sono assegnate le rispettive

password).

Se l’utente esiste viene abilitato ad accedere agli acquisti della sezione alimentari (alimentari.php),

altrimenti viene richiesto di ritornare alla pagina principale (index.php).

<?php

session_start();

//utenti registrati

$utenti['user1']='pass1';

$utenti['user2']='pass2';

$esiste=false; //flag = false(NON registrato)

foreach($utenti as $key => $value) {

// echo $key; //debug

if($_POST['user']==$key) //controlla se utente esiste

{

$esiste=true; //flag=true se utente registrato

$_SESSION['user'] = $_POST['user'];

}

}

?>

<html>

<head>

<title>Acquista il prodotto - Passo 2: Check</title>

</head>

<body>

<body>

<h1> Passo 2: Check </h1>

<?php

if($esiste) { ?>

Benvenuto <?php echo $_POST['user']; ?>

<form action='alimentari.php'>

<input type='submit' value='Vai alla spesa' />

</form>

<?php } else { ?>

Non sei registrato !!!

<form action='index.php'>

Page 11: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 10

<input type='submit' value='Torna al login' />

</form>

<?php } ?>

</body>

</html>

- Passo 3 (alimentari.php) – Acquisto prodotti alimentari

Questa pagina Web permette di selezionare uno o più prodotti alimentari (pasta, pesce, carne)e di inviarne

il relativo costo (value) al programma “tecnologia.php”.

<html>

<head>

<title>Acquista il prodotto - Passo 3: Alimentari</title>

</head>

<body>

<h1> Passo 3: Alimentari</h1>

<form action='tecnologia.php' method='post'>

<input type='checkbox' name='alim["pasta"]' value='0.85' /> Pasta (0.85 €)

<input type='checkbox' name='alim["pesce"]' value='11' /> Pesce (11.00€)

<input type='checkbox' name='alim["carne"]' value='20' /> Carne (20.00€)

<input type='submit' value='Avanti' />

</form>

</body>

</html>

- Passo 4 (tecnologia.php) – Acquisto prodotti tecnologici (fig. 4)

Questa pagina Web preleva i valori inviati dalla pagina precedente, con il metodo POST, e inseriti nel

relativo array e ne calcola il totale (“tot”). Per non perdere il valore calcolato passando alla pagina

successiva, la variabile “tot”, è salvata in un cookie di nome “alim”, che verrà ripreso nelle pagine

successive per il riepilogo dei costi (“cassa.php”).

<?php

$tot=0;

foreach($_POST['alim'] as $key => $value)

{

$tot=$value+$tot;

}

setcookie('alim',$tot,time()+3600);

?>

<html>

<head>

<title>Acquista il prodotto - Passo 4: Tecnologia</title>

</head>

<body>

<h1> Passo 4: Tecnologia</h1>

<form action='cassa.php' method='post'>

<input type='checkbox' name='tecn["stereo"]' value='30' /> Stereo (30 €)

<input type='checkbox' name='tecn["cellulare"]' value='50' /> Cellulare (50€)

<input type='checkbox' name='tecn["astronave"]' value='1000' /> Astronave (1000€)

<input type='submit' value='Vai alla cassa' />

</form>

Page 12: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 11

</body>

</html>

- Passo 5 (cassa.php) – Riepilogo del conto (fig. 5)

Il programma recupera i costi degli accessori scelti nel reparto tecnologico e ne salva il costo nel coockie

“tecn”.

Quindi calcola il totale recuperando i costi parziali dai due coockie salvati e fa il riepilogo dei costi, insieme

al nome dell’utente che era stato salvato in precdenza nella variabile di sessione. Infine richiama la funzione

di emissione scontrino (“paga.php”)

<?php

session_start();

?>

<?php

$tot=0;

foreach($_POST['tecn'] as $key => $value)

{

$tot=$value+$tot;

}

setcookie('tecn',$tot,time()+3600);

?>

<html>

<head>

<title>Acquista il prodotto - Passo 5: Riepilogo</title>

</head>

<body>

<h1> Passo 5: Riepilogo</h1>

<?php echo $_SESSION['user'];?> hai speso <?php echo $_COOKIE['alim'];?> per gli alimentari e hai speso

<?php echo $tot;?> per la tecnologia. <br>

Il totale è <?php echo $_COOKIE['alim']+$tot; ?>

<form action='paga.php' method='post'>

<input type='submit' value='Paga' />

</form>

</body>

</html>

- Passo 6 (paga.php) – Emissione scontrino e chiusura (fig.6)

Questa pagina stampa a video lo scontrino, servendosi dei valori contenuti nei coockie, saluta l’utente e

distrugge la sessione.

<?php

session_start();

?>

<html>

<head>

Page 13: qwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqw … · 2019-03-25 · Le sessioni in PHP rel 151202 Pag. 2 session_start() La funzione da utilizzare poi all'interno delle

Le sessioni in PHP rel 151202 Pag. 12

<title>Acquista il prodotto - Passo 6: Totale</title>

</head>

<body>

<h1> Passo 6 Totale</h1>

</br> Alimentari: <?php echo $_COOKIE['alim'];?>

</br> Tecnologia: <?php echo $_COOKIE['tecn']; ?>

</br>TOTALE è: <?php echo $_COOKIE['alim']+$_COOKIE['tecn']; ?>

</br></br>Alla prossima <?php echo $_SESSION['user'];?>, Ciao...

<?php

// cancella tutte le variabili di sessione

session_unset();

// distrugge la sessione

session_destroy();

?>

</body>

</html>