Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Sessioni e/o cookies

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75

    Sessioni e/o cookies

    Ciao a tutti,

    non ho proprio capito bene la differenza tra cookie e sessioni. O meglio, l'idea che mi sono fatto è che permettano di fare la stessa cosa in modi differenti. Sbaglio?
    Nel piccolo sito che sto sviluppando ho usato per ora le sessioni, aprendola ad ogni nuova pagina in modo da avere sempre a portata di mano alcuni dati dell'utente (username, email ecc... che ricavo quando servono con $_SESSION[]) che ho memorizzato in variabili di sessione nel momento del login.
    Adesso devo implementare i cookie. Qual'è la soluzione migliore che posso adottare?

    Grazie mille

  2. #2
    Le sessioni si appoggiano ai cookie (di sessione) oppure al SID trasmesso via url per recuperare in modo "automatico" dei dati stoccati nel file di sessione (o altro) che, in pratica, e' un array ($_SESSION) serializzato. Hanno un paio di scadenze: una lato client e l'altra lato server.

    Se invece vuoi utilizzare dei "tuoi" cookie allora devi predisporre tutto l'ambaradan. I cookie e un database dove stoccare i dati con le impostazioni a piacer tuo ed ovviamente uno script che supporti il tutto.

    tutto qui.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75
    Ok ma a lato pratico se io voglio implementare nel mio sito dei cookie "classici" quali metodi dovrei usare? Ho trovato diverse guide su internet ma non mi hanno chiarito molto, in più alcune sono molto datate.
    A me servirebbe, ad esempio, riconoscere l'utente. Quindi se l'utente x è loggato all'interno del sito, aprendo il sito da un'altra pagina del browser dovrebbe comparirgli il sito trovandosi, giustamente, già loggato. Che poi è il comportamento naturale che ci si aspetta da un sito che richiede autenticazione.

    Come potrei fare una cosa del genere? Sono sinceramente un pò in confusione.

    Grazie mille

  4. #4
    Se vuoi che l'utente risulti sempre loggato anche a distanza di giorni o chiudendo il browser come fa questo stesso forum allora devi crearti una tua gestione del login. Se invece vuoi utilizzare le sessioni allora ci sono dei timeout che inevitabilmente annulleranno la sessione.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75
    No a me serve che l'utente rimanga loggato finchè non si slogga o fino a quando non chiude il browser.
    A livello di codice potresti farmi un esempio per fare in modo che quando un utente si collega si crei il cookie? E poi come posso controllare che l'utente, una volta che apre il sito, non sia già collegato (magari in un'altra scheda del browser)?

    Grazie mille ancora

  6. #6
    http://forum.html.it/forum/showthrea...readid=1416218

    se cerchi session_start ne troverai a iosa....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Per fare un po' di chiarezza, un cookie e' un valore che viene memorizzato nel browser dell'utente. Puo' avere una scadenza, ed e' legato ad uno specifico dominio (o sottodominio) ed eventualmente ad un path all'interno di quel dominio. Questo significa che ogni volta che l'utente a cui hai fatto memorizzare un cookie si collega ad una pagina del tuo sito, il suo browser invia al server il cookie insieme alle altre informazioni che compongono la richiesta HTTP.

    Per metterla in parole
    - browser dell'utente: ciao server io sono un mozilla firefox versione XYZ, il mio IP e' xx.yy.zz.qq e vorrei la pagina /index.html, sappi che per il tuo dominio ho registrato il cookie 'utente' con valore 'giovanni' e il cookie 'tema_grafico' con valore 'autunnale'
    - server: ok browser grazie per le informazioni ora vedo cosa devo farci e ti rispondo tra un attimo

    questo per OGNI richiesta di quel browser al server di quel dominio.

    Le sessioni invece sono informazioni registrate SUL SERVER e l'utente che accede non le puo' vedere direttamente. Il server associa le informazioni di sessione ad un utente tramite il session id, che e' un valore che identifica univocamente la sessione e viene trasmesso dal client al server o tramite cookie ("ciao server tra i cookie ho questo 'session_id' che vale '31bb35fa13a' vedi se hai una sessione per me) o tramite URL.

    Nella pratica cookie e sessioni svolgono compiti molto simili, la scelta su quale usare dipende dalle necessita' dell'applicazione.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.