Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    per esperti!! utilizzo corretto delle sessioni

    salve,
    dovrei realizzare delle pagina per un sito, ora dovrai fare in modo che le pagine possano essere visualizzate soltanto dagli iscritti, avevo pensato di procedere in questo modo:

    Realizzo una pagina di login, la pagina successiva controlla se l'utente esiste ed in tal caso salva l'id della sessione nella variabile $_Session['id'] in questo modo


    $_SESSION['id']=session_id();


    mentre tutte le altre pagine contengono il controllo

    if ($_SESSION['id']!=session_id()) echo "errore"


    secondo voi è un modo corretto di procedere, oppure quale è il modo più giusto??

    grazie in anticipo

  2. #2
    secondo me va bene, io al momento del login di solito creo un var di sessione e ne verifico l'esistenza nelle altre pagine.. non uso l'id della sessione, ma penso che vada benissimo, anzi forse il tuo metodo è pure meglio del mio

  3. #3
    in futuro ti prego di evitare termini come "per esperti" nel titolo, non serve a niente se non a scoraggiare i vecchi utenti che evitano per principio titoli come questo....

    per rispondere alla tua domanda puoi salvare quello che vuoi nella sessione, ad essere pignoli salvare l'id è uno spreco inutile di memoria (pochi byte) perché non puoi accedere a quei dati di sessione se il tuo id non è quello, al limite potresti salvare l'ip per evitare il furto dell'id di sessione (pratica difficile)

    ciao

  4. #4
    ok scusa per il titolo, la prox volta starò più attento...


    una cosa non mi è chiara... come l'ho impostato io non va bene?? se dovessi conservarmi l'ip dell'utente, comunque ad ogni pagina dovrei effettuare un controllo per vedere se l'ip salvato nella variabile di sessione corrisponda con l'ip dell'attuale navigatore...

  5. #5
    nel primo post parli di id ora parli di ip nn è chiato ......potevi fare anche un controllo di tipo

    if(!isset($_SESSION['username']){ echo "Errore";
    }else{
    //contenuto
    }

    come aveva accennato cmsupporter2


  6. #6
    nel primo post parli di id ora parli di ip nn è chiato ......potevi fare anche un controllo di tipo

    if(!isset($_SESSION['username']){ echo "Errore";
    }else{
    //contenuto
    }

    come aveva accennato cmsupporter2




    EDIT: nn so perchè ha postato due volte

  7. #7
    Originariamente inviato da pippuzzo80
    ok scusa per il titolo, la prox volta starò più attento...


    una cosa non mi è chiara... come l'ho impostato io non va bene?? se dovessi conservarmi l'ip dell'utente, comunque ad ogni pagina dovrei effettuare un controllo per vedere se l'ip salvato nella variabile di sessione corrisponda con l'ip dell'attuale navigatore...
    la variabile $_SESSION['id'] se è settata ti dice già che l'utente è loggato basta un controllo del tipo

    if(isset($_SESSION['id']))

    quindi salvare dentro questa variabile il session_id non ti serve a niente.
    Infatti ti avevo specificato che al limite hai un piccolo (molto piccolo) spreco di memoria se fai
    $_SESSION['id']=session_id();

    tantovale che utilizzi un sistema del tipo
    $_SESSION['login'] = 1;

    Al limite se vuoi aumentare un pochino la sicurezza metti
    $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];

    Ed in ogni pagina utilizzi per il controllo
    if(isset($_SESSION['ip']) && $_SESSION['ip'] === $_SERVER['REMOTE_ADDR'])
    In questo modo nella remota possibilità che qualcuno scopra l'id di un utente loggato (magari dai cookie, o da un copia incolla dell'url in caso l'id sia propagato in get) non è in grado di entrare se non ha il suo ip.

  8. #8
    ok!

    adesso mi è più chiaro!!

    grazie

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.