Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    35

    Differenza tra Cookie e Session

    Scusate ma me la sono bellamente dimenticata e
    ho provato a sfogliare qualche guida ma purtroppo
    non specifica quale è meglio utilizzare x fare una
    certa cosa e quale no...

    Io devo memorizzare i dati del login..
    e forse qualcos'altro di piccolino.

    grazie ancora.
    Fidarsi è bene... non fidarsi e meglio! Compro/Vendo solo ed escusivamente con consegna a mano!<br>
    Rifiutare la preinstallazione di Windows XP? Ora puoi

  2. #2
    Utente bannato
    Registrato dal
    Sep 2005
    Messaggi
    905
    i cookie vengono memorizzati nel client del visitatore, le sessioni su server o su database se si crea la sessione con una classe. Le sessioni non so utilizzarle, ma so che i cookie possono essere modificati dai visitatori e quindi non del tutto sicuri, però io preferisco i cookie alle sessioni, perchè non so programmarle .


  3. #3
    Una delle soluzioni potrebbe essere quella di utilizzare sia le sessioni che i cookie, insieme.
    In questo modo potresti 'ricordarti' dell'utente nelle sue visite future.
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    18

    $_SESSION

    programmare le sessioni oggi con i nuovi array superglobali è quasi banale!
    L'array in questione è $_SESSION;
    Puoi chiamarlo anche dentro le funzioni senza doverlo passare ocme parametro!


    è sufficiente la chiamata a
    session_start();

    all'inizio dello script, per associare correttamente l'utente a quella sessione.

    Per precauzione, se dovesse apparirvi il problema dell' "output already sent", chiamate prima

    ob_start();

    Dopodichè, se vuoi memorizzare un dato, usi

    $_SESSION['nomevar'] = 'pippo';


    per richiamarlo:

    echo $_SESSION['nomevar'];

    Fine.

    Per eliminare i contenuti della sessione, usa

    session_unset();
    session_destroy();

    Secondo me, l'ideale per un login è la cosa seguente:

    l'utente chiede il login:
    se si è autenticato correttamente gli imposti, SE LO HA ESPRESSAMENTE CHIESTO, un cookie con la chiamata a

    setcookie('id',$classe_di_codifica->codifica($id_dal_db),'/',time()+" quanto ti pare in sec.");



    inserendovi per esempio, l'ID ma CODIFICATO! per esempio con una funzione crypt() a 2 vie, inserita magari in una classe.

    Per l'attuale navigazione, imposti un
    $_SESSION['login'] = true;

    e su ogni pagina ne effettui la presenza.

    Quando si slogga, la volta successiva controlli la presenza della variabile

    $_COOKIE['id']

    se presente la decodifichi ed effettui una chiamata al db per verificare che l'utente esista.

    altrimenti... si rilogga.

    Non usare cookie in chiaro; meglio evita!

    Bye

  5. #5
    Utente bannato
    Registrato dal
    Sep 2005
    Messaggi
    905
    io uso il cookie utente normale, quello password in formato md5 e poi per verificasre se l'utente e loggato:

    file users.php:

    <?php die("non puoi vedere il contenuto"); ?>
    utente_1|--|--|passmd5_1
    utente_2|--|--|passmd5_2

    function check_user($user, $md5pass) {
    $result = FALSE;
    $users_db = file("users.php");
    foreach($users_db as $line) {
    $user = explode("|--|--|", $line);
    if($user[0] == $user && $user[1] == $md5pass) {
    $result = TRUE;
    break;
    }
    }
    return $result;
    }

    e poi in ogni pagine dello script metto:

    if(check_user($_COOKIE['utente'], $_COOKIE['md5password'])) {
    //pagina
    }else{
    header("Location: login.php");

    et voilà che l'utente non mi fotte


  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    35
    Perfetto...
    dunque la variabile session per memorizzare la sessione corrente
    ed i cookie per ricordarsi del cliente.

    ora mi guardo la funzion crypt cosa combina
    perchè trovo interessante l'opportunità di codificare e decodificare
    prima di dargli il cookie

    Per la cronoca ho trovato anche questo tutorial che sembra davvero ben fatto:
    http://www.siforge.org/articles/2003...sioni_php.html

    Sono sicuro che servirà a molti di voi.

    Grazie ancora.
    Fidarsi è bene... non fidarsi e meglio! Compro/Vendo solo ed escusivamente con consegna a mano!<br>
    Rifiutare la preinstallazione di Windows XP? Ora puoi

  7. #7
    Utente bannato
    Registrato dal
    Sep 2005
    Messaggi
    905
    comunque ti voglio informare che con crypt() non si può decriptare ma per farlo maschera la criptazione o come si dice con il base64.

    http://it.php.net/manual/it/function.base64-encode.php
    http://it.php.net/manual/it/function.base64-decode.php


  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    18
    vero, colpa mia ho sbagliato a scrivere!

    non in tendevo la funzione crypt(), ma di caricare il modulo php

    mcrypt

    compilando il php con --with-mcryp[=DIR]

    A questo punto hai la possibilità di usare delle funzioni di codifica e decodifica piuttosto avanzate.


    http://it2.php.net/manual/it/ref.mcrypt.php

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    18
    un appunto...

    ho letto la funzione del confronto password con md5()

    ottima e funzionale, più o meno quello che fa MySQL quando memorizza le password, ma trovo scomodo il fatto che ogni volta che un utente si dimentica una password, gliene devi generare una nuova!

  10. #10
    Utente bannato
    Registrato dal
    Sep 2005
    Messaggi
    905
    allora usa il base64..

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.