SESSID - Wie funktioniert's?

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

  • SESSID - Wie funktioniert's?

    Ich hab jetzt gut drei Stunden hier alles gelesen was mit Session-IDs zu tun hat. Anfänger bin ich nicht, aber auch kein Powerscripter und dewegen will ich ja was lernen.

    Ich hab auch das Tutorial unter
    php.net gelesen, kann aber damit auch net viel anfangen, weil ich alles besser verstehe, wenn ich das in einem Beispiel sehe.

    Kann mir vielleicht jemand ein Beispiel mit Sessio-IDs geben (wenn geht von anfang an? Ich kapier nicht ganz, wie ich diverse Variablen auslese oder einspeichere in der Session-ID.

    Ausserdem hab ich gelesen das die Session-ID Mutliglobal sein soll. Für was muss ich sie dann eigentlich bei einer Verlinkung übergeben, oder würde die dann bei der nächsten Seite neu berechnet?

    Also! Wäre echt nett, wenn mir jemand ein Beispielscript zeigen oder geben könnte (muss nicht extrem gross sein), damit ich dass irgendwie nachvollziehen könnte.

    Gruss
    Thomas

  • #2
    Achso! Nochwas!

    Manche speichern die SessionID in die DB, was andere hier für Unsinn halten, weil man sie auch von alleine löschen kann. Wie wird sie denn angelegt? Im /tmp als txt oder wie wird das abgespeichert, wenn überhaupt?

    Kommentar


    • #3
      Unterschied zwischen Cookie vs. Session.

      - Cookies liegen wie jeder weiss beim User auf seiner HDD
      - Session liegen aber auf dem Server in einer File abgelegt.

      Die Session ID in DB abzuspeichern ist kein überhaupt kein Schwachsinn. Dadurch kann ich erkennen welcher User welche Session hat und ggf. dann seine Session Sache auslesen.

      Sieht man es logisch dann kann ein User ohne Session ID niemals eingeloggt sein oder?

      Was gibts bei Session schon zu erklären, das einizige was man wissen bzw. können muss ist das:

      PHP-Code:
      session_start();
      $_SESSION['test']="initialisierungderSessionVar";
      $_SESSION['nochmal']="hallole";

      print_r($_SESSION); 
      Man sieht die Funktion gibt dir ne Session ID.
      Und sobald eine Session eine Wert zugewiesen bekommen, wird ne Variable erstellt mit dem Wert.
      Somit hast du ein Array mit den ganzen Infos.........

      Im übrigen wenn du die Suche gebraucht hättest, wäre das gleich am Anfang klar gewesen....

      EDIT:

      Definiert man in der php.ini das Session Handling so kann man automatisch veranlassen das die Session in jedem Link automatisch mit übertragen wird.....

      [color=blue]MfG Payne_of_Death[/color]

      [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
      [color=red]Merke:[/color]
      [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

      Murphy`s Importanst LAWS
      Jede Lösung bringt nur neue Probleme
      Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
      In jedem kleinen Problem steckt ein großes, das gern raus moechte.

      Kommentar


      • #4
        Bin ich jetzt doof oder warum bekommt man bei deinem Beispiel keine ID wie b58e91bd5f7971316bf1e8b33c4f4e38 ??

        Und bitte! Wie lese ich die Daten wieder aus?
        Indem ich in der DB die Daten zur zugehörigen SessID speichere?

        Und: Ich habe gesucht und auch gelesen ....

        Kommentar


        • #5
          auslesen:
          PHP-Code:
          echo $_SESSION['test']; 
          (so wie jedes andere array eben auch)

          die session-id gibt dir die funktion session_id()
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            doh

            tag leute
            Unterschied zwischen Cookie vs. Session
            - Cookies liegen wie jeder weiss beim User auf seiner HDD.
            - Session liegen aber auf dem Server in einer File abgelegt.
            bitte wie erkennt eine Session den user wieder?? per codierter IP ini der Session oder wie?? es muss doch auch irgendwo beim user eine art cookie abgelegt werden
            kann mir das ma einer erklären

            dank dank

            Kommentar


            • #7
              bei jedem request muß sie übertragen werden. das kann man manuell machen, oder php eledigt das für dich (und zwar immer beim parsen deines scriptes) dabei gibt es nur 2 übertragungsarten POST oder GET

              das mit dem speichern der session id halte ich für fragwürdig. es kann fälle geben wo es sinn macht, doch meistens jedenfalls net. denn das problem ist du weißt nicht ob der user noch wirklich online ist, auch wenn in der db noch ne id drin steht!
              Zuletzt geändert von muecke0815; 12.12.2003, 15:42.
              ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
              und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

              Kommentar


              • #8
                wenn du cookies akzeptierst, wird ein cookie angelegt, in dem die session-id steht, wenn nicht, greifen die mechanismen die mein vorredner geschrieben hat
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  jupp cookies hatte ich verdrängt. aber es ist eine weit verbreitet art die session_id zu halten.

                  diese daten der cookies sind dann im httpheader enthalten
                  Zuletzt geändert von muecke0815; 12.12.2003, 15:50.
                  ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
                  und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

                  Kommentar


                  • #10
                    also wenn ich cookies deaktiviert habe funzen auch keine Sessions?
                    meine frage war eigentlich wie der server den benutzer zB nach neustart des Browsers wiedererkennt. ich habe cookie aktiviert aber wo finde ich jetz den Session cookie auf der festplatte?

                    Kommentar


                    • #11
                      Original geschrieben von hagbard
                      also wenn ich cookies deaktiviert habe funzen auch keine Sessions?
                      meine frage war eigentlich wie der server den benutzer zB nach neustart des Browsers wiedererkennt. ich habe cookie aktiviert aber wo finde ich jetz den Session cookie auf der festplatte?
                      session = Sitzung

                      wenn cookies deaktiviert sind, muss die session_id per uri übertragen werden um Session nutzen zu können.

                      Um einen User nach einem Neustart des Browser wiedererkennen zu können muss man ein separates Cookie setzen mit Erkennungsmerkmalen. Sessioncookies gelten nur für ein Browser und werden nach dem Schliessen gelöscht. Im Sessioncookie wird eh nur die ID abgelegt.
                      mfg
                      marc75

                      <Platz für anderes>

                      Kommentar


                      • #12
                        hier nochmal eine andere ausführliche erklärung:
                        http://www.dclp-faq.de/q/q-sessions-wie.html
                        ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
                        und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

                        Kommentar

                        Lädt...
                        X