Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329

    Qualcuno mi illumina sulle sessioni???

    Salve gente, vorrei capire meglio queste sessioni;
    ho letto una marea di roba su COOKIE e SESSIONI, ma nn ho capito bene alcune cose:

    1) Come fare senza $_GET, a mantenere la sessione di un untente nelle varie pagine riservate???
    Cioè, io so che da un form tramite $_POST['...']; posso portare la variabile in un altra pagina descritta nel ACTION, ma quando nn ho il FORM?

    2) Meglio usare i COOKIE o le SESSIONI (che cmq un coockie lo sendano sempre).

    3) Ho letto che la $_SESSION(mixed var[,...); crea una sessione con un aray associativo, che di default (la sessione), dura 24 minuti, come fare a impostare la durata di $_SESSION?

    Se avete altri consigli da darmi sarò lieto di seguirli, grazie!!!
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Le sessioni, non sono altro che un tipo di variabile come le post, che anzichè avere la durata di una pagina hanno la durata specificata sul server (di efault 1400 secondi che sono 24 minuti).

    Comunque la durata si riferisce all'ultima volta che la sessione è stata scritta, e anche se non è la regola si presume che chi sta utilizzando il sito prima o poi vada a riscrivere la sessione, quindi anche se non è una regola si può azzardare a dire che la sessione dura 24 minuti dopo l'ultima azione dell'utente.

    per settare la durata dal php metti all'inizio della pagina :

    codice:
    ini_set("session.gc_maxlifetime","3600");  // 1 ora
    La differenza tra cookie e sessione, è che il cookie viene scritto sul client, la sessione su un file sul server.

    Io i cookie li uso raramente, in genere vengono usati per salvare informazioni riguardo il client. ad esempio se devi ricordare un utente per evitare di proporgli il login è comodo scriverlo sul client anzichè sul server, mentre se sono informazioni riguardo l'applicazione meglio la sessione, che rimane sul server e viene pulita quando non più necessaria.

    Ciao

  3. #3
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Ma quindi, meglio le sessioni per cose normali, tipo forum ecc... o è questione di preferenze???
    Ad esempio per fare un sito di vendita ON-LINE il carrello e tutto ciò che riguarda un acquisto , logicamente anche Log-In, cosa sarebbe meglio usare e come???
    Grazie cmq per i consigli...!
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    decisamente le sessioni per quello che chiedi.

    ciao

  5. #5
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Quindi mi stai dicendo che anche per il carrello è meglio la SESSION che il COOKIE???
    Io sulla guida presente sul sito, ho letto che tipo se tu vuoi fare delle pagine personalizzabili, devi usare il cookie, perchè questo tiente memoria delle preferenze del client... e così pensavo anche per uno shop-online...
    Mi fai un esempio di quando è necessario o cmq megli ousare i cookie rispetto alle sessioni???
    Grazie mille cmq!
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  6. #6
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Allora???
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  7. #7
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Il punto è proprio qui:

    perchè questo tiente memoria delle preferenze del client
    Il carrello è una preferenza del client, ma solo per la sessione corrente.
    La prossima volta che il client si connette il carrello dovrà essere vuoto.
    Mentre se ad esempio volessi dare la scelta al client di mostrare la pagina con un colore personalizzato è meglio salvare l'informazione sul client.
    Se dovessi farlo lato server dovresti salvare l'informazione su un database o su un file, con la memorizzazione di dati lato server inutili.

    Non so se ho reso l'idea, ma devi pensare a quando e come ti serviranno i dati per decidere dove è meglio salvarli.

    In linea generale, salvi le informazioni in sessione se ti servono solo per la sessione corrente (il carrello), su db se sono informazioni che vuoi conservare perchè ti sono utili (i dati del cliente), nei cookie se sono informazioni che vuoi che persistano per un certo tempo (ad esempio le preferenze sul colore di sfondo della pagina, piuttosto che il login "perpetuo" a un forum).

    Ciao

  8. #8
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Ok ora mi è tutto più chiaro, grazie mille!!!
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    4
    Sfrutto questo Thread per chiedere anche io un aiuto sulle sessioni.

    Ho sviluppato un semplicissimo sistema di login per un sito utilizzando le sessioni ma senza i cookie.
    In locale con php 5.2 funziona tutto senza problemi, login, logout, e controllo.

    Quando sposto l'applicazione sul mio spazio web (che utilizza php 4.4.1), il logout non funziona: resto in sessione finchè non chiudo TUTTE le finestre di Firefox/explorer, anche quelle aperte ex-novo.

    La pagina di logout fa questo

    Codice PHP:
    session_start();
    session_unset();
    session_destroy();

    header("location: ../index.php"); 
    Ho provato anche a fare l'unset delle singole variabili di sessione

    Codice PHP:
    unset($_SESSION['id']);
    unset(
    $_SESSION['username']);
    unset(
    $_SESSION['accesso']); 
    prima di fare session_destroy, ma se ne sbatte.

    Qualche idea?

    Grazie

  10. #10
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    provato con :

    codice:
    $_SESSION['id'] = false;
    $_SESSION['username'] = false;
    $_SESSION['accesso'] = false;
    In linea generale evita tutti i comandi session_register ecc..

    guarda i riquadri in giallino :

    http://fr.php.net/manual/it/function...n-register.php

    ciao

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.