Session ID Killen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Session ID Killen

    Moin,

    brauche mal wieder einen kleinen Rat.
    erzeuge bei Richtiger Eingabe von Nick & Passwort eine Session ID.

    Beim Ausloggen des Users wird diese wieder auf NULL gesetzt.
    Beim Drücken auf "zurueck" im browser,ist man jedoch wieder eingeloggt und kann Daten ändern.
    Das soll aber eben nicht geschehen. Mann soll sich erst wieder mit Nick und Pass anmelden müssen. Ist ja klar.
    Bei mir stehen Nick, Pass & SessID in einer Tabelle(MySql).

    Hat jemand einen Vorschlag?

  • #2
    session_destroy
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Hab das grad mal ausprobiert. Auf meinem Rechner gehts, online geht es allerdings nicht.
      Gibt es da noch irgendwelche anderen Lösungen?
      Zuletzt geändert von XGremliN; 28.02.2005, 12:57.
      it's not a bug,
      it's a feature!

      Kommentar


      • #4
        Trying to destroy uninitialized session

        Das ist der Fehler den ich bekomme......

        Meine logout Funktion:
        PHP-Code:
        function logout() 

            
        $sql="UPDATE users 
            SET UserSession=NULL 
            WHERE UserSession='"
        .session_id()."'"
             
        mysql_query($sql);     

        beim zurück button ist die session id wieder in die DB eingetragen....aber das soll eben net sein.

        Kommentar


        • #5
          Bei mir gehts überhaupt nicht, weder lokal noch online.

          @kave78
          den Fehler hatte ich auch schon, kann es sein, dass du session_destroy doppelt aufrufst?
          it's not a bug,
          it's a feature!

          Kommentar


          • #6
            die frage ist vielmehr, wo rufst du die Funktion überhaupt auf?

            Kommentar


            • #7
              PHP-Code:
              if(isset($_POST['logout']))
              {
                  
              session_destroy();

              So sieht der Aufruf aus. Hab ich irgendwo am Anfang im Skript stehen, ist aber doch eigentlich egal, oder net?
              it's not a bug,
              it's a feature!

              Kommentar


              • #8
                Die Funktion Logout ()
                rufe ich bei bestätigung eines "logout" Buttons auf :
                PHP-Code:
                session_start();
                include 
                'db_session.php';
                logout(); 
                include 
                "../framesets/tanz.php"
                Hierbei ist zu sagen,das alles funktioniert. Ich ahbe noch nirgendwo session_destroy() aufgerufen,da ich nicht weiß, an welche Stelle man das setzten muss.

                Habe gerade was gefunden:
                http://de.php.net/session_destroy
                Zuletzt geändert von kave78; 28.02.2005, 16:52.

                Kommentar


                • #9
                  Habe gerade was gefunden:
                  Nein, hast du etwa das Manual entdeckt? *scnr*

                  Kommentar


                  • #10
                    Hilft auch nur nen sch..* bei meinem klitzekleinen problemchen ...was in Bezug auf Datensicherheit ...eine ganz GROßE SCH:?^@ ist.

                    Sorry aber bin etwas depri .....aber werds weiter versuchen dem Problem auf die Spur zu kommen..

                    Kommentar


                    • #11
                      mal eine frage am Rande, du fragst bei jedem Seitenaufruf die DB ab ob die session_id in der Tab vorkommt?
                      mfg
                      marc75

                      <Platz für anderes>

                      Kommentar


                      • #12
                        ich erzeuge beim einloggen des Users eine Sesion Id,welche in die Tab geschrieben wird.
                        DH. Eindeutige SessionID WIrd einer UserId zugeordnet.
                        Der Benutzer der nun diese session Id hat ,dessen daten können abgerufen verändert oder gelöscht werden solange er eingeloggt ist.
                        Beim LOGOUT lösche ich die Session ID aus der Datenbank und setzte sie auf NULL mit der function logout().

                        Kommentar


                        • #13
                          Ich hab jetzt mal session_destroy() als letzten Befehl in mein Script geschrieben. Da müsste er doch eigentlich die Session immer gleich wieder beenden oder? Auf jeden Fall ist es so, dass es lokal geht, aber online wieder nicht.
                          Hab da auch schon verschiedene Möglichkeiten getestet, immer mit dem gleichen Ergebnis.
                          it's not a bug,
                          it's a feature!

                          Kommentar


                          • #14
                            Original geschrieben von XGremliN
                            Ich hab jetzt mal session_destroy() als letzten Befehl in mein Script geschrieben. Da müsste er doch eigentlich die Session immer gleich wieder beenden oder? Auf jeden Fall ist es so, dass es lokal geht, aber online wieder nicht.
                            Hab da auch schon verschiedene Möglichkeiten getestet, immer mit dem gleichen Ergebnis.
                            haste denn mal in manual von www.php.net geschaut?

                            session_destroy löscht alles was in der Session steht, die session (+id) selbst nicht.
                            mfg
                            marc75

                            <Platz für anderes>

                            Kommentar


                            • #15
                              @kave78

                              das nach dem Ausloggen und das betätigen des Zurückbutton im Browser, man wieder die vorherige Seite sieht liegt am Browsercache, eventuell mal beim ausloggen versuchen mit header umzuleiten.

                              Wenn aber beim betätigen des Zurückbutton die session_id wieder in die DB eingetragen wird, dann haste ein Denkfehler in dein Scriptablauf.
                              mfg
                              marc75

                              <Platz für anderes>

                              Kommentar

                              Lädt...
                              X