Page 176 - Corso di PHP - Livello base
P. 176

parlare.  I  cookie  (letteralmente  “biscotti”)  sono  informazioni
                che vengono inviate dal server al client:  e  proprio  qui  sta  la

                prima  differenza  rispetto  alle  sessioni,  perché  queste  ultime
                rimangono sul server. Un'altra differenza consiste nel fatto che

                la  sessione  viene  cancellata  nel  momento  in  cui  il  browser
                viene chiuso: il cookie invece persiste fino alla sua scadenza,
                impostata  quando  il  cookie  viene  creato.  Data  la  natura  dei

                cookie, questi ci torneranno utili se vogliamo creare un modulo
                di  login  che  si  “ricordi”  dell'utente  una  volta  chiuso  il

                browser, per evitargli magari di immettere nuovamente nome e
                password  al  collegamento  successivo.  Un  altro  esempio  può
                essere  dato  da  un  sito  multilingua:  se  il  nostro  sito  accoglie

                l'utente in italiano, ma quest'ultimo preferisce l'inglese, potrebbe

                rendersi necessario un cookie che si ricordi dell'impostazione
                settata dall'utente (ovvero “sito in lingua inglese”) ogni volta
                che si collega.


                Per creare un cookie esiste un'apposita funzione, setcookie, che

                riceve  tre  parametri  principali:  il  nome  del  cookie,  le
                informazioni e la durata:


                 setcookie("nome", "Federico", time()+3600);


                La durata si imposta utilizzando la funzione time: quest'ultima
                restituisce il numero di secondi trascorsi dal 1 gennaio 1970

                alle  ore  00:00:00.  Si  tratta  della  data  di  inizio  del  tempo
                calcolato  sui  sistemi  Unix  ed  è,  come  già  detto,  espresso  in

                secondi:  si  intuisce  quindi  che  al  valore  restituito  da  time
                bisognerà  aggiungere  un  numero  di  secondi  equivalente  al
                periodo  di  durata  del  nostro  cookie.  Nel  caso  dell'esempio,

                3600 secondi: significa che il cookie avrà la durata di un'ora
                (formata  da  3600  secondi).  Si  intuisce  quindi  che  è  possibile

                settare una durata qualsiasi per il nostro cookie, anche di anni!


                 setcookie("nome", "Federico", time()+3600*24); //un giorno



                                                          176
   171   172   173   174   175   176   177   178   179   180   181