Home | Search | Help  
Home Page Università di Genova

Salvare lo stato: cookies e sessioni

  1. Argomento della lezione
  2. Materiale scaricabile
  3. Esempi visti a lezione
  4. Link
Argomento della lezione
In questa lezione vediamo come si può salvare lo stato della comunicazione durante interazioni HTTP successive tra un web server e lo stesso client. Parleremo di cookies e di variabili di sessione facendo riferimento alle funzioni PHP che permettono di realizzarli. Queste due tecniche sono naturalmente indipendenti dal linguaggio di programmazione scelto, e sono quindi utilizzabili anche usando teconologie diverse.

Per quanto riguarda i cookies - che sono memorizzati sull'elaboratore client - è addirittura possibile utilizzare JavaScript svincolandosi quindi da ogni tipo di linguaggio server-side adottato. Però la gestione dei cookies in JavaScript è più difficile rispetto alla corrispondente gestione server-side.

Inoltre, è importante non dimenticare che l'utente può disabilitare JavaScript e naturalmente anche i cookies!
Materiale scaricabile
  • Lucidi della lezione
    1. in formato PDF, 3 diapositive per pagina, con spazio per le note (circa 333 KB)
    2. in formato PDF, 6 diapositive per pagina (circa 322 KB)
  • Esempi visti a lezione
    1. Scrittura di un cookie: Home page del sito

      Alla prima visita al sito viene presentato un modulo per la raccolta dei dati dell'utente. Alle visite successive viene presentato un messaggio personalizzato, con nome e cognome, e si permette immediatamente l'accesso alle offerte della settimana.

      Nota: in questo esempio il valore del cookie contiene dati "sensibili". In realtà sarebbe meglio usare un codice e recuperare i dati "sensibili" (in questo caso il nome e il cognome del visitatore) da un database.

      Sorgenti: | cookie1.php | cookie2.php | cookie3.php |
      (se utilizzate questi sorgenti, ricordate di cambiare l'estensione da .txt a .php)

    2. Gestione di un carrello mediante le variabili di sessione: spesa Click

      In questo esercizio è possibile "acquistare" on line dei prodotti per ufficio. Il prodotti sono suddivisi per categoria. Una volta selezionata una categoria, viene visualizzato l'elenco dei prodotti attualmente disponibili in magazzino.
      È possibile decidere il numero di pezzi che si vogliono acquistare per ogni tipo di prodotto e memorizzare questa informazione in un carrello il cui contenuto può essere visualizzato e modificato fino a quando non si decidere di attivare il meccanismo di check out.
      A questo punto, nel caso di cliente già registrato, basta inserire username e password. I nuovi clienti, invece, dovranno prima registrarsi.

      Nota: ovviamente l'esercizio non è completo ... si dovrebbero sviluppare le parti mancanti e migliorare l'esistente ...

      Sorgenti: | ufficio.php | prodcat.php | carrello.php | sessione.php | modifica.php | login.php | registrazione.php | salvacliente.php | funzioni.php | reset.php |
      (se utilizzate questi sorgenti, ricordate di cambiare l'estensione da .txt a .php)
    Link
    1. HTTP State Management Mechanism
    2. Cookies (dal sito www.webopedia.com)
    3. Persistent Client State HTTP cookies
    4. Supporto per le sessioni in PHP (manuale)
    Libro consigliato per questa parte
    PHP and MySQL Web Development, Luke Welling and Laura Thomson, SAMS
    (ma qualunque altro libro va bene).


    vai alla lezione precedente
    torna alla prima pagina del corso
    vai alla prossima lezione