COOKIES
Un cookie è semplicemente una variabile che la tua pagina web può cedere al computer del visitatore, oppure una variabile che dal computer del visitatore passa alla tua pagina web.
L'idea di fondo è che le volte successive che il visitatore approda alla tua pagina, il valore del cookie potrà essere letto dalla tua pagina, e quindi usato per diversi scopi.
Alcuni esempi di cookie:
La prima volta che il visitatore arriva, inserisce il suo nome.
Il nome dell'utente viene memorizzato in un cookie.
La volta successiva che quel visitatore arriverà alla tua pagina, apparirà una scritta del tipo: "Benvenuto nella mia pagina, John Wayne!!
Il nome viene riportato dal cookie precedentemente memorizzato
Il visitatore che entra per la prima volta nella tua pagina, inserisce la lingua prescelta.
La lingua desiderata viene memorizzata in un cookie. La volta successiva, il visitatore verrà portato automaticamente alle pagine scritte nella lingua prescelta, perché le informazioni sulla scelta della lingua sono riportate dal cookie.
Il visitatore che entra per la prima volta nella tua pagina deve inserire una certa parola d'ordine.
La parola d'ordine viene memorizzata in un cookie. La volta successiva, la parola d'ordine verrà riportata dal cookie.
LA TECNICA
I cookies si possono memorizzare e recuperare usando javascript.
Il programma innanzitutto controlla se è già presente un cookie.
Se sì, il cookie viene usato per un certo scopo. Altrimenti, crea un cookie e lo userà ogni volta che l'utente visiterà la pagina.
IL CODICE
Per usare i cookie nelle tue pagine hai bisogno di: una funzione che legga il cookie (se questo è presente) una funzione che memorizzi il cookie una funzione che cancelli il cookie
Ecco tre funzioni in grado di svolgere questi compiti: getCookie setCookie delCookie
funzione getCookie(NameOfCookie) { // Prima controlliamo se c'è un cookie memorizzato. // Altrimenti la lunghezza del document.cookie sarebbe zero. if (document.cookie.length > 0) {
// Poi controlliamo se il nome del cookie è conservato nell'oggetto // "document.cookie"della pagina // Siccome è possibile inserire più di un cookie su una // singola pagina, è possibile che il nostro cookie
// non sia presente, anche se l'oggetto "document.cookie" // non è solo un testo vuoto. // Se il nome del nostro cookie non è presente, verrà memorizzato il valore -1 // nella variabile chiamata "begin".
begin = document.cookie.indexOf(NameOfCookie+"=" ); if (begin != -1) // Nota: != significa "non è uguale a" { // Il nostro cookie era presente. // Il valore memorizzato nel cookie viene rimandato dalla funzione.
begin += NameOfCookie.length+1; end = document.cookie.indexOf(";", begin); if (end == -1) end = document.cookie.length; return unescape(document.cookie.substring(begin, end)); } } return null;
// Il nostro cookie non era presente. // Il valore "null" viene rimandato dalla funzione. }
funzione setCookie(NameOfCookie, value, expiredays) { // Servono tre variabili per creare il nuovo cookie. // Il nome del cookie, il valore da memorizzare, // e infine il numero di giorni fino alla scadenza del cookie. // Le prime righe nella funzione convertono il numero dei giorni in una data // valida.
var ExpireDate = new Date (); ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000)); // La riga seguente memorizza il cookie, semplicemente // assegnandogli
// i valori dell'oggetto "document.cookie". // Nota che la data è riportata all'ora del Meridiano di Greenwich usando // la funzione "toGMTstring()".
document.cookie = NameOfCookie + "=" + escape(value) + ((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString()); }
funzione delCookie (NameOfCookie) { // La funzione controlla semplicemente se il cookie è memorizzato. // Se lo è, la data di scadenza è fissata al 1° gennaio 1970.
if (getCookie(NameOfCookie)) { document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; } }
PER FARLO FUNZIONARE
Il semplice inserimento del codice qui sopra non crea alcun cookie. Gli strumenti che ti servono per leggere, creare e cancellare i cookie sulla tua pagina sono le funzioni.
Il passo finale nell'inserimento di un cookie nella tua pagina è dare uno scopo al cookie. Decidi se vuoi che il cookie conservi il nome del visitatore, la data della sua ultima visita alla tua pagina o la lingua prescelta. Oppure adopera il cookie per qualsiasi altro scopo.
In ogni caso, i codici che dovrai aggiungere ai programmi del cookie saranno diversi
IL PROGRAMMA GREZZO
Ecco il programma del cookie senza i commenti. Copialo e incollalo per usarlo sul tuo sito :
function getCookie(NameOfCookie) { if (document.cookie.length > 0) { begin = document.cookie.indexOf(NameOfCookie+"="); if (begin != -1) begin += NameOfCookie.length+1; end = document.cookie.indexOf(";", begin); if (end == -1) end = document.cookie.length; return unescape(document.cookie.substring(begin, end)); } } return null; }
function setCookie(NameOfCookie, value, expiredays) { var ExpireDate = new Date (); ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000)); document.cookie = NameOfCookie + "=" + escape(value) + ((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString()); }
function delCookie (NameOfCookie) { if (getCookie(NameOfCookie)) { document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; } }