Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Logout ed eliminazione variabili di sessione
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • O
      obeach User Newbie • ultima modifica di

      perchè a me non funziona il log out?

      Questo il codice:

      <?php
      session_start();
      unset( $_SESSION['id']);// Ho provato anche session_unset()
      unset($_SESSION['login']);
      unset($_SESSION['group']);

      // destroy PHP session
      session_destroy();

      // return to site homepage
      header("Location: index.php");
      ?>

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        thedarkita ModSenior • ultima modifica di

        unset( $_SESSION['id']);// Ho provato anche session_unset()
        unset($_SESSION['login']);
        unset($_SESSION['group']);

        non servono...

        basta session_destroy();

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • O
          obeach User Newbie • ultima modifica di

          non cambia ... non succede niente lo stesso anche se non uso la funzione unset

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            deve funzionare per forza....

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • O
              obeach User Newbie • ultima modifica di

              invece niente ... dove può essere il problema?

              Aggiungo anche il codice per avviare la sessione che ho usato :

              if ($_POST['user'] == $user && $_POST['pass'] == $pass) {
              session_start();
              $_SESSION['login'] = "ok";
              $_SESSION['group'] = $group;
              $_SESSION['id'] = $id;
              //echo 'Autorizzato';
              header("Location: menu.php");
              }

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • D
                digital.daigor User Attivo • ultima modifica di

                fai così.....a me funziona sempre meglio di altro!!!

                $_SESSION['login'] = "";
                $_SESSION['group'] = "";
                $_SESSION['id'] = "";

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • O
                  obeach User Newbie • ultima modifica di

                  @Digital Daigor said:

                  fai così.....a me funziona sempre meglio di altro!!!

                  $_SESSION['login'] = "";
                  $_SESSION['group'] = "";
                  $_SESSION['id'] = "";

                  non va neanche così ... mmmhmmm

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • massimux
                    massimux Moderatore • ultima modifica di

                    nella pagina di logout

                    [php]
                    // Inizializza la sessione.
                    // Se state usando session_name("qualcosa"), non dimenticatevelo adesso!
                    session_start();
                    // Desetta tutte le variabili di sessione.
                    session_unset();
                    // Infine , distrugge la sessione.
                    session_destroy();
                    [/php]

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • O
                      obeach User Newbie • ultima modifica di

                      Metto il codice che ho usato per l'avvio, la valutazione e la chiusura della sessione.
                      Il logout continua a non funzionare ovvero quando clicco sul link alla pagina logout.php mi fa il redirect ma la variabile $_SESSION['login'] continua ad essere valorizzata e non posso neanche cambiare utente a meno di chiudere il browser.

                      questo è il codice per avviare la sessione ...

                      if ($_POST['user'] == $user && $_POST['pass'] == $pass) {
                      session_start();
                      $_SESSION['login'] = "ok";
                      $_SESSION['group'] = $group;
                      $_SESSION['id'] = $id;
                      //echo 'Autorizzato';
                      header("Location: menu.php");
                      }

                      Questo è quello per l'accesso alle pagine riservate ...

                      if ($_SESSION['login'] != "ok") {
                      header("Location: index.php");
                      }

                      questo è quello per il logout

                      session_start();
                      $_SESSION = array();
                      /* ho provato anche con
                      ho provato anche con:
                      session_unset()
                      unset()

                      e con

                      $_SESSION['login'] = "";
                      $_SESSION['group'] = "";
                      $_SESSION['id'] = "";
                      */

                      session_destroy();

                      // return to site homepage
                      header("Location: index.php");

                      Dopo il log out riesco ad entrare lo stesso nelle pagine riservate.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • D
                        digital.daigor User Attivo • ultima modifica di

                        nn avevo visto questo:
                        $_SESSION['login']

                        prova a resettarlo!!

                        $_SESSION['login'] = "";

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • O
                          obeach User Newbie • ultima modifica di

                          ho provato anche quello.

                          stamattina ho provato ad installare il progetto in locale e funziona tutto!
                          Quindi credo che dipenda dalle impostazioni del webserver del mio provider ... ma che configurazione di php influisce sulla scrittura delle variabili di sessione?
                          Suggerimenti?

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • D
                            digital.daigor User Attivo • ultima modifica di

                            può essere influenzato dalle impostazioni sulle variabili....

                            ad esempio....
                            se viene passato un valore un get, esempio: ?prova=1

                            lo puoi richiamare tramite $prova

                            potrebbe essere quello il problema.....guarda se hai variabili con nome uguale....

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            Caricamento altri post
                            Rispondi
                            • Topic risposta
                            Effettua l'accesso per rispondere
                            • Da Vecchi a Nuovi
                            • Da Nuovi a Vecchi
                            • Più Voti