kurze Frage zu Sessions

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

  • kurze Frage zu Sessions

    Ich werkel grad an nem Projekt in dem ich auch ziemlich viel mit Sessions arbeite - außerdem werden hier auch einige Sachen mit '_blank' verlinkt die allerdings innerhalb der gleichen Domain bleiben.

    Jetzt merk ich gerade, dass die Session-daten bei so nem '_blank'-Link auch im neuen Fenster wieder zur Verfügung stehen.

    Nun - wenn im Browser Cookies deaktiviert sind und der Link mit der SessionID ausgestattet wird (da transid=on) leuchtet es mir ja ein. Aber ich hab gar nicht damit gerechnet dass in dem Fall, dass das Cookie gesetzt werden kann, dieses vom Browser auch im neuen Fenster an den Server übergeben wird.

    Ist das doch 'normal' so und ich lag mit meiner Annahme dass dem nicht so wäre von Haus aus daneben?
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

  • #2
    ich bin mir nicht sicher, ob ich dich richtig verstanden habe: dich überrascht es, dass die session-daten auch im neuen fenster zur verfügung stehen, obwohl das cookie in einem alten gesetzt wurde?

    sieh das so: "_blank" ist nur eine anweisung an den browser. http-grundlagen-technisch ist es genauso, als ob es kein "_blank" wäre.

    oder hab ich die frage nicht verstanden?

    Kommentar


    • #3
      doch - du hast die Frage schon richtig verstanden

      und das hier hat mich grad verstehen lassen:
      http-grundlagen-technisch ist es genauso, als ob es kein "_blank" wäre.
      Thx
      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
      Schön - etwas Geschichte kann ja nicht schaden.
      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

      Kommentar


      • #4
        Original geschrieben von penizillin
        sieh das so: "_blank" ist nur eine anweisung an den browser. http-grundlagen-technisch ist es genauso, als ob es kein "_blank" wäre.
        Das ist mir ein bisschen "dünn" - bzw. "http-grundlagen-technisch" hat damit m.E. wenig zu tun.

        Session-Cookies - nicht bezogen auf die Session von PHP, sondern als Bezeichnung für solche ohne Verfallsdatum, die also vom Browser nur für die Dauer der "Surf-Session" gemerkt werden - sind in den gängigen Browserimplementation immer innerhalb der selben Browserinstanz verfügbar (ähnlich der gemerkten Login-Daten für HTTP Auth).

        Startest du explizit eine neue Browser-Instanz, dann dürfte es dort auch dieses Sitzungs-Cookie nicht geben.
        Öffnest du aber nur ein neues Fenster oder Tab der gleichen Programminstanz, dann ist der Cookie auch dort verfügbar.

        Ob der Browser jetzt für target="_blank" eine neue Instanz startet oder nicht, bleibt wohl ihm überlassen (bzw. lässt sich ggf. durch den Benutzer konfigurieren).
        Weitgehend üblich dürfte jedoch das Öffnen unter der gleichen Programminstanz sein.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Mit session_name() kannst Du sessions unterscheiden (zwei bzw. mehrere sessioncookies nebeneinander). Allerdings muss dann jedes Fenster woher auch immer wissen, welchen sessionnamen es hat und ihn vor session_start() nennen. Man kann auch überlegen, für jedes Fenster in der gemeinsamen Session seinen eigenen Variabelnsatz haben zb als Variabelnnamen-prefix, muss es aber auch woher immer wissen und noch einiges richtig machen...

          Kommentar


          • #6
            Der Link soll nur mit '_blank' geöffnet werden, falls Javascript aus ist, und deshalb window.open() bei onclick nicht zum Zug kommt - wie's bei aktiviertem Javascript dann aussieht (also wenn das neue Fenster mit window.open geöffnet wird) könnt evtl. nochmal ein Unterschied sein, seh ich das richtig?

            However - ich werds evtl. heut irgendwann noch selber sehen, wenn ich dazu komme das ganze fertig zumachen.
            Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
            Schön - etwas Geschichte kann ja nicht schaden.
            Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

            Kommentar


            • #7
              Ok, auch wenns über window.open geöffnet wird, stehen bei den großen drei (IE, FF, Opera) die Sessiondaten zur Verfügung - wär zwar nicht zwingend erforderlich gewesen aber jetzt wo ich seh, dass das doch bei einem großen Teil der Browser der Fall sein dürfte, nutz ich das um dem User in der einen oder anderen Ecke ein paar Eingabehilfen usw. zur Verfügung zu stellen
              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
              Schön - etwas Geschichte kann ja nicht schaden.
              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

              Kommentar

              Lädt...
              X