Ankündigung

Einklappen
Keine Ankündigung bisher.

Frage zu Sessions. ID zur nächsten Seite ohne Cookie durchreichen, mit hidden input.

Einklappen

Neue Werbung 2019

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

  • Frage zu Sessions. ID zur nächsten Seite ohne Cookie durchreichen, mit hidden input.

    Hi.

    Ich arbeite mit einer Session. Ich verwende Cookies für die Session ID.
    Für den Fall, dass Cookies nicht verfügbar sind, hänge ich die Session ID an die Links an. Das macht das System automatisch nachdem ich es aktiviert habe.

    Jetzt tritt folgendes Problem auf: Beim ersten Seitenaufruf weiß das System noch nicht, ob Cookies verfügbar sind. Beim ersten Seitenaufruf wird also immer die Session Varible an die Links angehangen. Erst ab dem zweiten Seitenaufruf werden dann korrekt Cookies benutzt.

    Ich könnte jetzt durch 2 Redirects das Problem lösen, indem ich einmal mit der angehängten SessionID auf eine Zwischenseite zum Abfragen des Cookies redirecte, und von da dann wieder zurück. Sind halt 2 Redirects, und es ist auch nicht die feine englische Art.

    Viel lieber wäre mir, wenn die Session Variable in einem unsichtbaren Eingabefeld zwischengespeichert werden würde, damit sie nicht in den Links erscheint. Also bei der ersten Seite, und falls keine Cookies verfügbar sind.

    Aber wie erreiche ich, dass der Inhalt des unsichtbaren Eingabefeldes an die nächste Seite durchgereicht wird?
    Mache ich nen Submit Button klappts, klar. Aber der Submit Button soll nicht da sein, und egal welcher Link angeklickt wird, soll das weiter gereicht werden.

    Nur für den Fall, dass das mit den unsichtbaren Eingabefeldern auch nicht klappt, will ich als dritten Fallback die Session ID an die URL als Parameter anhängen.

    Oder habt ihr ne bessere Idee, das Problem zu lösen?


  • #2
    Zitat von Barney Beitrag anzeigen
    Aber wie erreiche ich, dass der Inhalt des unsichtbaren Eingabefeldes an die nächste Seite durchgereicht wird?
    Mache ich nen Submit Button klappts, klar. Aber der Submit Button soll nicht da sein, und egal welcher Link angeklickt wird, soll das weiter gereicht werden.
    Zwischen Formularfeldern und Links besteht kein Zusammenhang - gut erkannt.

    Jetzt tritt folgendes Problem auf: Beim ersten Seitenaufruf weiß das System noch nicht, ob Cookies verfügbar sind. Beim ersten Seitenaufruf wird also immer die Session Varible an die Links angehangen.
    Vielleicht erklärst du erst mal, wieso du absolut normales, definiertes Verhalten für ein „Problem“ hältst ...?

    Kommentar


    • #3
      Zitat von Barney Beitrag anzeigen
      Jetzt tritt folgendes Problem auf: Beim ersten Seitenaufruf weiß das System noch nicht, ob Cookies verfügbar sind. Beim ersten Seitenaufruf wird also immer die Session Varible an die Links angehangen. Erst ab dem zweiten Seitenaufruf werden dann korrekt Cookies benutzt.
      Da frage ich mich warum das ein Problem darstellt?

      Wenn jemand die Seite das erste mal aufruft ist er zu 100% ein Gast wenn er nicht über einen Cookie automatisch eingeloggt werden konnte.

      D.h. entweder ist der Benutzer nicht eingeloggt oder es werden keine Cookies akzeptiert.

      Da der Benutzer für einen Login aber einen zweiten Request abschicken muss hast du definitiv die Möglichkeit beim ersten Seitenaufruf erst einmal einen Testwert als Cookie abzulegen und dann bei der nächsten Aktion des Benutzers auf diesen Wert zu prüfen und dann zu entscheiden.

      Entweder der Benutzer klickt also als Gast einen Link an und erhält erst dann eine Gast-Session-ID oder er loggt sich ein und erhält dann eine ID für registrierte Benutzer.

      Ich sehe da irgendwie kein Problem...
      "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

      Kommentar


      • #4
        Beim ersten Seitenaufruf wird also immer die Session Varible an die Links angehangen
        Es geht wohl eher um die URL outline, bspw. beim Bookmarken.
        --

        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


        --

        Kommentar


        • #5
          Richtig.
          Im "memberbereich" wäre es joch egal, wenn die Session ID als URL Parameter erscheint. Wird ja oft so gemacht. Man muss die Session halt als ungültig erklären, wenn sie an jemand anders per Link weiter gegeben wird. Z.B. in dem man die IP und Browser Agent jedes mal überprüft und zusätzlich ne Zeitbegrenzung einbaut.

          Im allgemeinen Bereich will ich halt nicht, dass die Session ID in den Links erscheint.
          Damit "sauberere Links" gebookmarkt werden, auf andern Seiten nur sauber verlinkt wird usw.
          Für Suchmaschinen und Robots ist es auch besser.

          Ich brauch die Session im allgemeinen Bereich aber. Sonst ist man für die Seite jedes Mal ein neuer Besucher und der Besucher-Counter wird falsch hochgezählt.
          Oder ich müsste es IP und Useragent Basiert mit eigener Datenverwaltung rein serverseitig machen. Dann noch ein eigenes ID Cookie, und wenn das nicht zurückkommt, halt nur auf IP und Useragent verlassen.
          Dann werden ehr zu wenig Besucher gezählt, wenn mehrere Rechner mit gleichem Browser+os ohne cookies über die selbe IP online sind (z.B. Schule)

          Kommentar


          • #6
            Zitat von Barney Beitrag anzeigen
            Ich brauch die Session im allgemeinen Bereich aber. Sonst ist man für die Seite jedes Mal ein neuer Besucher und der Besucher-Counter wird falsch hochgezählt.
            Vielleicht solltest du einfach Prioritäten setzen ...

            Dann werden ehr zu wenig Besucher gezählt
            Na diese Tragik hält sich aber stark in Grenzen.

            Wenn du irgendwo auf der Seite einen Counter präsentieren willst, „diese Katzencontentseite hatte bereits 13 Besucher seit dem 1.1.2007“ - das kannst du m.E. gleich bleiben lassen, interessiert keinen.

            Und ernsthafte Auswertungen zur Verbesserung der Site kann man besser über sorgfältige Logfile-Analyse etc. machen.

            Kommentar


            • #7
              Naja genau so einen Counter hab ich gemacht.
              Ich hab auch z.B. bei jedem Blogeintrag nen Counter "Dieser Blogeintrag wurde von X Personen gelesen". "Dieses Foto wurde X mal betrachtet" und so. Was auch über die Session läuft.

              Kommentar


              • #8
                Aber um nochmal auf die eigentliche Frage zurückzukommen: wie kann man einen Wert in einem Hidden Input speichern, so dass er immer weiter gegeben wird. bei allen Links, nicht nur bei dem Submit Link?

                Kommentar


                • #9
                  Zitat von Barney Beitrag anzeigen
                  Aber um nochmal auf die eigentliche Frage zurückzukommen: wie kann man einen Wert in einem Hidden Input speichern, so dass er immer weiter gegeben wird. bei allen Links, nicht nur bei dem Submit Link?
                  Um noch mal auf die bereits gegebenen Antworten zurück zu kommen:
                  Zitat von ChrisB Beitrag anzeigen
                  Zwischen Formularfeldern und Links besteht kein Zusammenhang - gut erkannt.

                  Klar, per JavaScript könnte man da schon was basteln - aber das ist genauso optional, wie Cookies.

                  Kommentar


                  • #10
                    Hmm dann geht der Tip, Variablen per hidden Input durchzureichen, in dem fall nicht

                    Ich glaub dann werde ich das mit den Sessions im öffentlichen Seitenbereich sein lassen.
                    Saubere Links beim allgemeinen Content sind mir schon wichtig.

                    Ich werde dann die Zähler mit eigenem Besucher Cookie und als Fallback Auswertung von IP und UserAgent basteln.

                    Oder habt ihr ne bessere Idee?

                    Kommentar

                    Lädt...
                    X