Pagina 1 di 2 12 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 43

Discussione: Come usare le sessioni php

  1. #1
    Guest

    Predefinito Come usare le sessioni php

    Ciao a tutti sapete dirmi come usare le sessioni al meglio....
    vi spiego ho un database con nomi e pass di utenti...

    devo fare che attraverso un login se i dati sono giusti fa partire la sessione
    dove memorizza il nome della persona cosi da la possibilità di lasciare commenti...^^

    p.s.
    non dite cerca nel forum perché non sono riuscito a cercare qualcosa di interessante...

  2. #2
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Ti propongo di vedere qui:
    http://php.net/manual/en/function.session-start.php
    Una volta visti gli esempi non dovrebbe essere difficile capire come funziona.

    Saluti!

  3. #3
    Guest

    Predefinito

    credo di aver capito...
    pero ho alcuni dubbi...
    1)la sessione quando tempo dura
    2)dove viene salvata
    3)e possibile fare in modo che l'utente rimanga collegato per sempre fino a quando non fa il logout
    ^^

  4. #4
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    1) Dura fino a quando non chiudi la finestra
    2) Probabilmente sul tuo pc ma non chiedermi dove xD cmq sono variabili globali, ovvero che se le inizializzi una volta ti rimangono in tutte le pagine che navighi, finchè non chiudi la finestra
    3) Devi usare i cookie
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  5. #5
    Guest

    Predefinito

    mi interessa anche a me la discussione...
    ma se io volessi salvare il tutto per recuperare i dati tipo domani come devo fare...
    tipo la persona fa il login oggi e domani appena entra nella pagina stampa il nome

  6. #6
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    Citazione Originalmente inviato da zappi Visualizza messaggio
    mi interessa anche a me la discussione...
    ma se io volessi salvare il tutto per recuperare i dati tipo domani come devo fare...
    tipo la persona fa il login oggi e domani appena entra nella pagina stampa il nome
    serve senz'altro un database, però non c'entra moltissimo in questa discussione visto che bisogna usare i cookie anche in questo caso (e in tutti i casi in cui si vuole che un utente possa ripristinare i dati della sessione precedente)
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  7. #7
    Guest

    Predefinito

    potresti fare un esempio prendendo i dati dal db...
    creare un cookie o sessione fino a quando non venga cancellato ho fatto il logout...

  8. #8
    Guest

    Predefinito

    anche a me interessa questo argomento, apro una sessione... con $_SESSION posso fare tutte le variabili che voglio?

    es.

    //start session
    session_start();

    session_regenerate_id(TRUE);

    //variabili per criptare in md5 = $password=md5(htmlspecialchars( $_GET[pass]));
    $user=$_POST['user'];

    $password=md5($_POST['passw']);

    $query = "SELECT * FROM ".$table['prefix']."users WHERE ut_nick='".$user."' AND ut_passw='".$password."'";

    $result = mysql_query($query);

    if(mysql_num_rows($result)) {

    //se è loggato creo la sessione
    $_SESSION['user'] = $user;
    $_SESSION['password'] = $password;
    $_SESSION['auth'] = 0;
    Header( "Location: http://localhost/wow/index2.php" );

    }
    $_SESSION['auth'] me lo legge? posso creare tutte le variabili con voglio?

  9. #9
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    è un array, come tutti gli array puoi creare quante chiavi vuoi
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  10. #10
    Guest

    Predefinito

    ma se io vorrei fare una cosa come altervista che metti nome e pass e poi sa chi sono...
    cosa mi conviene fare...
    io devo fare che duri per sempre fino a quando non fa il logout...

  11. #11
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Citazione Originalmente inviato da ageofempiresgif Visualizza messaggio
    ... bisogna usare i cookie anche in questo caso (e in tutti i casi in cui si vuole che un utente possa ripristinare i dati della sessione precedente)
    Saluti!

  12. #12
    Guest

    Predefinito

    ma che tempo devo mettere per i cookie per farlo durare per sempre fino a quando non lo cancello io ho l'utente....

  13. #13
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Mica devi creare un cookie eterno. Ad esempio lo imposti per 2 settimane, appena l'utente effettua di il login aggiorni la durata del cookie.

    Saluti!

  14. #14
    Guest

    Predefinito

    potresti fare un esempio...
    p.s.
    se il cookie non e impostato da errore come posso fare che non avvenga....

  15. #15
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Codice PHP:
    <?php
    if(/* dati corretti */) {
    // imposto il cookie
    setcookie("nome_cookie", "contenuto", time() + (20160 * 60));
    } else {
    // dati errati
    }
    ?>
    Che vuol dire che ti da errore se il cookie non è impostato?

    Saluti!

  16. #16
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    Citazione Originalmente inviato da zappi Visualizza messaggio
    se il cookie non e impostato da errore come posso fare che non avvenga....
    Faccio un esempio: Supponiamo che tu voglia il cookie "username"e il cookie "password" (password opportunamente codificata), così che il login sia automatico; nel seguente esempio i cookie durano un'ora:
    Codice PHP:
    <?php

    if(empty($_COOKIE['username']) || empty($_COOKIE['password'])){
    (
    utente non autenticato)
    }else{
    (
    utente già autenticato)
    setcookie("username", "SonoUnBelFiol", 3600);
    setcookie("password", "wlamamma", 3600);
    ...
    }
    ?>
    NB: Se utilizzi i cookie per una variabile, non è necessario usare le sessioni per la stessa.
    Ultima modifica di ageofempiresgif : 14-11-2009 alle ore 22.05.31
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  17. #17
    Guest

    Predefinito

    se io faccio cosi e il cookie login non e impostato da errore...
    se e impostato ma vuoto stampa sconosciuto...
    se fa il login stampa il nome...
    ma il problema e nel punto uno se non e impostato da errore...
    se io faccio il logout e poi vado al index stampa sconosciuto perche imposto cookie vuoto...
    Codice PHP:
    <?php
    setcookie
    ("login_forum");
    setcookie("nome_utente_forum");
    echo
    'Logout effettuato';
    header("Location: index.php");
    ?>
    Codice PHP:
    <?php if($_COOKIE['login_forum'] == "OK"){ echo $_COOKIE['nome_utente_forum']; }else{ echo 'Sconosciuto'; }?>
    il problema se l'utente lo cancella manualmente da errore e stampa sconosciuto...
    Notice: Undefined index: login_forum in...

  18. #18
    Guest

    Predefinito

    Devi mettere session_start() all'inizio dello script.

  19. #19
    Guest

    Predefinito

    ma sto usando i cookie non le sessioni

  20. #20
    Guest

    Predefinito

    La sessione viene scritta in un cookie che poi viene cancellato alla chiusura della finestra se questo non è stato settato per essere mantenuto per più tempo.

  21. #21
    Guest

    Predefinito

    se non ti chiedo molto puoi fare un esempio...
    uno in cui alla chiusura del browser il cookie o la sessione viene cancellata...
    ed uno che duri fino ad quando non fa il logout...^^

  22. #22
    Guest

    Predefinito

    zappi cosa c'è di difficile in quel che ti abbiamo scritto

    Aggiungi all'inizio dello script che hai postato poco fa e vedrai non riceverai un Notice (che non è un errore, ma indica che la variabile non è settata).

  23. #23
    Guest

    Predefinito

    nella pagina login ho messo questo...
    Codice PHP:
    setcookie('login_forum', 'OK', time() + 3600);
    setcookie('nome_utente_forum', $nome, time() + 3600);
    echo
    'Login Effettuato';
    header("Location: index.php");
    questo in quello index
    cosi dici
    Codice PHP:
    <?php
    session_start
    ();
    if(
    $_COOKIE['login_forum'] == "OK"){
    echo
    $_COOKIE['nome_utente_forum'];
    }else{
    echo
    'Sconosciuto';
    }
    ?>

  24. #24
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Ah, ho capito che errore ti da.
    Devi usare isset.

    Codice PHP:
    <?php
    session_start
    ();
    if(isset(
    $_COOKIE['login_forum']) && $_COOKIE['login_forum'] == "OK"){
    echo
    $_COOKIE['nome_utente_forum'];
    }else{
    echo
    'Sconosciuto';
    }
    ?>
    Saluti!

  25. #25
    Guest

    Predefinito

    funziona...
    ma ho alcuni dubbi..
    1)nella pagina logout cosa devo mettere per cancellare i cookie...
    2)per far durare il cookie fino ad quando non si chiude la finestra e possibile fare come altervista...
    3)un cookie che duri per sempre fino a quando non ha il logout o viene cancellato dal utente e possibile...

    nella pagina login uso questo
    Codice PHP:
    setcookie('login_forum', 'OK', time() + 3600);
    setcookie('nome_utente_forum', $nome, time() + 3600);
    echo
    'Login Effettuato';
    header("Location: index.php");
    p.s.
    ma se i cookie non sono attivati come faccio....
    Ultima modifica di zappi : 15-11-2009 alle ore 12.54.39

  26. #26
    L'avatar di andreafallico
    andreafallico non è connesso Super Moderatore
    Data registrazione
    02-06-2009
    Messaggi
    1,981

    Exclamation

    Citazione Originalmente inviato da zappi Visualizza messaggio
    Codice:
    setcookie('login_forum', 'OK', time() + 3600);
    setcookie('nome_utente_forum', $nome, time() + 3600);
    echo 'Login Effettuato';
    header("Location: index.php");
    header non può essere utilizzato dopo di echo.

  27. #27
    Guest

    Predefinito

    lo so infatti lo sistemato prima...^^

    per questo sai darmi una mano...
    ma ho alcuni dubbi..
    1)nella pagina logout cosa devo mettere per cancellare i cookie...
    2)per far durare il cookie fino ad quando non si chiude la finestra e possibile fare come altervista...
    3)un cookie che duri per sempre fino a quando non ha il logout o viene cancellato dal utente e possibile...

    nella pagina login uso questo
    Codice PHP:
    setcookie('login_forum', 'OK', time() + 3600);
    setcookie('nome_utente_forum', $nome, time() + 3600);
    header("Location: index.php");
    p.s.
    ma se i cookie non sono attivati come faccio....

  28. #28
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    Citazione Originalmente inviato da zappi Visualizza messaggio
    1)nella pagina logout cosa devo mettere per cancellare i cookie...
    imposta al cookie una data di scadenza "già scaduta" (nota il '-' anzichè '+'):
    Codice PHP:
    setcookie('login_forum', 'OK', time() - 3600);
    Citazione Originalmente inviato da zappi Visualizza messaggio
    2)per far durare il cookie fino ad quando non si chiude la finestra e possibile fare come altervista...
    usa le sessioni
    Citazione Originalmente inviato da zappi Visualizza messaggio
    3)un cookie che duri per sempre fino a quando non ha il logout o viene cancellato dal utente e possibile...
    per far durare un cookie "per sempre" imposta una data di scadenza a lungo termine (exampli gratia un anno):
    Codice PHP:
    setcookie('login_forum', 'OK', time() + 60*60*24*365);
    Citazione Originalmente inviato da zappi Visualizza messaggio
    p.s.
    ma se i cookie non sono attivati come faccio....
    se intendi sul browser allora sono i tuoi utenti che devono attivarli, non c'è altra soluzione (al più metti un avviso nella pagina in caso di cookie disattivati)

    PS: biccheddu ha scritto una castroneria, infatti se non si usano le sessioni non serve session_start() (evidentemente...! :P)
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  29. #29
    Guest

    Predefinito

    se non ti chiedo molto per capire potresti farmi un esempio con tutto il codice...^^
    cosa devo mettere nel login e nella pagina index dove stampa il nome e in fine nel logout...
    perchè mi sto perdendo...

  30. #30
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Io per capire se i cookie sono abilitati o meno, creo un cookie se è stato creato i cookies sono abilitati, altrimenti no.

    Saluti!

Pagina 1 di 2 12 UltimoUltimo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •