Home
I cookies in Javascript

28 Novembre 2002

I cookies in Javascript

di

La soluzione del compito a casa della settimana scorsa. Gestire i cookies con Javascript.

Risposta esatta

Ho ricevuto molte email con la soluzione al questito che vi avevo posto la settimana scorsa.

L’obiettivo era creare una pagina HTML che la prima volta che viene chiamata ci chieda il nostro nome e le volte successive sappia riconoscerci chiamandoci per nome.

Per far questo il modo più semplice era utilizzare in maniera oculata i “mattoni” descritti nell’articolo della settimana scorsa.

Vi ricordo brevemente che tali mattoni erano forniti dalle funzioni:

function setCookie(NameOfCookie, value, expiredays)
function getCookie(NameOfCookie)
function delCookie (NameOfCookie)

Una volta in possesso dei mattoni, si trattava soltanto di utilizzarli, ed è quello che è stato fatto da (quasi) tutti quelli che mi hanno mandato la soluzione. Tra le tante, naturalmente molto simili tra loro, ho scelto quella di Marcello di Torino, ma solo perché la prima arrivata (addirittura poche ore dopo la pubblicazione…).

La soluzione

Eccola, si tratta di un file HTML statico con il seguente contenuto:


Prova utilizzo Cookies

Elimina il cookie.

Ricarica la pagina.


/

Come vedete il cuore del codice sta nella funzione Init() che viene eseguita all’evento Load della pagina, come si può vedere nel tag .

Ogni volta che la pagina viene visitata viene letto il valore del cookie, naturalmente la prima volta la funzione getCookie() non troverà il cookie e restituirà un null.

Testando questo valore siamo in grado di capire se è la prima volta che la pagina viene visitata e quindi possiamo mostrare la richiesta del nome all’utente:

L’utente inserisce il suo nome e questo viene memorizzato all’interno del cookie.

La volta successiva la lettura del cookie non restituirà null, ma il nome che era stato inserito in precedenza, pertanto la pagina sarà in grado di mostrare all’utente il messaggio di bentornato.

Per eliminare il cookie è sufficiente utilizzare il link apposito che utilizza la funzione delCookie() e permette, all’accesso successivo, l’inserimento di un nuovo nome.

Conclusioni

Adesso ci sono i mattoni e c’è anche una delle possibili implementazioni.

Che dire? Obiettivo raggiunto!

L'autore

  • Massimo Canducci
    Massimo Canducci vanta oltre 25 anni di esperienza nel campo dell'innovazione e della digital transformation ed è Chief Innovation Officer per Engineering Ingegneria Informatica. È docente alla Singularity University, l'Università di Torino e l'Università di Pavia, e insegna in master MBA.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.