Tobias: Session mit MySql

Hallo,

ich versuche eine Pseudo-Session in PHP mit MySql zu realisieren. Dazu möchte ich kein AUTO-Increment benutzen um die nächste Session ID zu finden. Ich kann z.b. den höchsten Wert in der Tabelle finden und dann den nächst Höhren als nächste Session ID zu benutzen. Ich habe nur das Problem das wenn ein gewisser Maximalwert erreicht ist (z.b. 1000) ich wieder mit der Session ID 1 beginnen möchte. Kann mir jemanden einen Tip geben wie ich machen kann?

Gruß

Tobias

  1. Hallo,

    explizit die id einfügen
      oder if id > 1000
      table droppen und neu erstellen

    warum gerade bei 1000?

    gruss

    --
    no strict;
    no warnings;
    79.78 cups of Coffee (Brewed) + Me = Death
    Kalorien sind winzig kleine nachtaktive Tiere, die unbeobachtet menschliche Kleidung enger nähen.
    1. Hallo,

      1000 war ein belibiges Bsp. Dropen geht nicht da die oberen Werte noch benutzt werden, wenn ich wieder von BVorne beginne.

      Gruß

  2. Hallo Tobias,

    ich versuche eine Pseudo-Session in PHP mit MySql zu realisieren. Dazu möchte ich kein AUTO-Increment benutzen um die nächste Session ID zu finden. Ich kann z.b. den höchsten Wert in der Tabelle finden und dann den nächst Höhren als nächste Session ID zu benutzen. Ich habe nur das Problem das wenn ein gewisser Maximalwert erreicht ist (z.b. 1000) ich wieder mit der Session ID 1 beginnen möchte. Kann mir jemanden einen Tip geben wie ich machen kann?

    Wenn ich das so sehe möchtest du eine Session-ID, die nicht ganz so kompliziert aussieht.
    Da braucht man ja nicht mal den höchsten Wert herauszufinden, sondern einfach eine freie ID zwischen 1 und 1000. Das wirst du aber selbst hinbekommen können, oder? ;-)

    Btw.: 1000 scheint mir für solche Sachen doch eine sehr kleine Zahl zu sein.

    Grüße

    Marc Reichelt || http://www.marcreichelt.de/

    --
    Linux is like a wigwam - no windows, no gates and an Apache inside!
    Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
    http://emmanuel.dammerer.at/selfcode.html
    1. Hallo,

      Die Zahl war nur als Bsp, übere die Letztendliche größe habe ich mir noch keine Gedanken gemacht. Freie Werte zu suchen ist zu aufwendig, ich  gehe davon aus das der erste Wert (1) wieder frei ist wenn ich den letzten Wert (z.b. 100000000000000) erreiche.

      Gruß

  3. hi,

    ich versuche eine Pseudo-Session in PHP mit MySql zu realisieren. Dazu möchte ich kein AUTO-Increment benutzen um die nächste Session ID zu finden. Ich kann z.b. den höchsten Wert in der Tabelle finden und dann den nächst Höhren als nächste Session ID zu benutzen.

    Die wäre dann aber verdammt "pseudo", deine Session.

    Die Sicherheit von Sessions, wie sie allgemein üblich implementiert werden, basiert ja u.a. auf der Zufälligkeit und damit Un-Erratbarkeit der Session-ID.

    Wenn du jetzt aber einfach fortlaufende Zahlen nimmst, dann dürften gültige Session-IDs recht leicht auch für Dritte auffindbar sein - willst du das?

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. hi,

      ich versuche eine Pseudo-Session in PHP mit MySql zu realisieren. Dazu möchte ich kein AUTO-Increment benutzen um die nächste Session ID zu finden. Ich kann z.b. den höchsten Wert in der Tabelle finden und dann den nächst Höhren als nächste Session ID zu benutzen.

      Die wäre dann aber verdammt "pseudo", deine Session.

      Die Sicherheit von Sessions, wie sie allgemein üblich implementiert werden, basiert ja u.a. auf der Zufälligkeit und damit Un-Erratbarkeit der Session-ID.

      Wenn du jetzt aber einfach fortlaufende Zahlen nimmst, dann dürften gültige Session-IDs recht leicht auch für Dritte auffindbar sein - willst du das?

      gruß,
      wahsaga

      Letztendlich benutze ich die PHP Session zum Zwischenspeichern der Pseudo ID so der Benutzer nie damit in berührung kommt. Ich möchte nur die eigendlich Daten in einer MYSql Table speichern anstatt sie in die Session von PHP zu werfen. In der PHP Session steht nur die Pseudo ID über die ich dann die zugehörigen Daten in der MYSQL Tabellen identifiziere. Ich mach das weil es für mich "durchsichtiger" ist wenn ich mir die Werte aller Sessions anschauen kann.

      1. hi,

        Letztendlich benutze ich die PHP Session zum Zwischenspeichern der Pseudo ID so der Benutzer nie damit in berührung kommt. Ich möchte nur die eigendlich Daten in einer MYSql Table speichern anstatt sie in die Session von PHP zu werfen. In der PHP Session steht nur die Pseudo ID über die ich dann die zugehörigen Daten in der MYSQL Tabellen identifiziere.

        Warum nimmst du dann nicht die Session-ID von PHP als Key für die Daten in der DB?
        Dann kannst du dir das selber-suchen freier IDs doch sparen.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. hi,

          weil ich mich so darum kümmern müßte nicht mehr gebrauchte Sessions IDs aus der DB zu löschen, wenn ich eine Zahlenkette nehme überschreiben sie sich automatisch.

          Grüße

          1. Hi,

            weil ich mich so darum kümmern müßte nicht mehr gebrauchte Sessions IDs aus der DB zu löschen, wenn ich eine Zahlenkette nehme überschreiben sie sich automatisch.

            wow! Habs gelesen und zur Kenntnis genommen.

            BTW - was sind denn so Sessions und was macht man so damit?

            Gruss,
            Ludger

            1. hi,

              weil ich mich so darum kümmern müßte nicht mehr gebrauchte Sessions IDs aus der DB zu löschen, wenn ich eine Zahlenkette nehme überschreiben sie sich automatisch.

              Und wie willst du dann sicherstellen, dir keine noch aktive Session mit den Daten einer neuen zu überschreiben?

              wow! Habs gelesen und zur Kenntnis genommen.

              Deine Art zu sagen, "ich kapier kein Wort von dem, was ihr da redet"?

              BTW - was sind denn so Sessions und was macht man so damit?

              http://de.wikipedia.org/wiki/Sitzung_(Informatik)
              http://de.wikipedia.org/wiki/SessionID

              gruß,
              wahsaga

              --
              /voodoo.css:
              #GeorgeWBush { position:absolute; bottom:-6ft; }
              1. weil ich mich so darum kümmern müßte nicht mehr gebrauchte Sessions IDs aus der DB zu löschen, wenn ich eine Zahlenkette nehme überschreiben sie sich automatisch.

                Und wie willst du dann sicherstellen, dir keine noch aktive Session mit den Daten einer neuen zu überschreiben?

                wow! Habs gelesen und zur Kenntnis genommen.

                Deine Art zu sagen, "ich kapier kein Wort von dem, was ihr da redet"?

                aeeh?

              2. hi,

                weil ich mich so darum kümmern müßte nicht mehr gebrauchte Sessions IDs aus der DB zu löschen, wenn ich eine Zahlenkette nehme überschreiben sie sich automatisch.

                Und wie willst du dann sicherstellen, dir keine noch aktive Session mit den Daten einer neuen zu überschreiben?

                wow! Habs gelesen und zur Kenntnis genommen.

                Deine Art zu sagen, "ich kapier kein Wort von dem, was ihr da redet"?

                BTW - was sind denn so Sessions und was macht man so damit?

                http://de.wikipedia.org/wiki/Sitzung_(Informatik)
                http://de.wikipedia.org/wiki/SessionID

                gruß,
                wahsaga

                Hi,

                indem ich eine Obergrenze wähle die groß genug ist das dies nicht vorkommen kann (sicher es bleibt immer ein restrisko aber ich denke ich kann es auf fast null minimieren).

                Gruß

  4. Moin!

    ich versuche eine Pseudo-Session in PHP mit MySql zu realisieren.

    Warum "pseudo"? Warum nicht mit den richtigen PHP-Sessions? Die bieten doch schließlich an, alternativ zum Standardmechanismus eigene Routinen zum Laden, Speichern und Löschen von Sessiondaten einzubinden - und mit denen kann man dann problemlos auch in MySQL-Datenbanken speichern.

    - Sven Rautenberg

    --
    My sssignature, my preciousssss!