alle Sessions ausgeben

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

  • alle Sessions ausgeben

    Hi!

    Habe einen Chat programmiert, der mit Sessions arbeitet. Jetzt möchte ich natürlich alle Benutzer, deren Session aktiv ist (eingeloggt), auch ausgegeben.

    Ist das möglich? Wenn ja, wie?

    Liebe Grüsse.

  • #2
    Entweder für jeden beim Einloggen zentral vermerken, wer es ist oder durch alle gespeicherten Sessions gehen. Letzteres ist unsauber, weil die Session u.U. nicht mehr aktiv ist, aber noch nicht vom GC gelöscht wurde.

    Ein eigener Session Handler wäre natürlich auch eine Möglichkeit.

    Kommentar


    • #3
      Original geschrieben von onemorenerd
      Letzteres ist unsauber, weil die Session u.U. nicht mehr aktiv ist, aber noch nicht vom GC gelöscht wurde.
      M.E. nicht nur deshalb unsauber, sondern auch weil man die Session-Dateien "selber" öffnen müsste.

      Da sollte man aber nicht selber dran rumspielen, sondern das PHP überlassen.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        außerdem kriegt man - insofern man den session.save_path nicht selbst setzen kann, bei einem ungesicherten shared hoster die sessions vom nachbarn auch noch mit.

        in den user-beiträgen zu sessions unter http://www.php.net/session ist ein beispiel angezeigt, wie man die session mit einem eigenen session-handler auf die datenbank verlegt. der overhead ist meiner meinung nach nicht wirklich groß, wenn man die datenbank-verbindung eh braucht, und dann kann man sowas schon machen.

        grüße
        axo

        Kommentar


        • #5
          Original geschrieben von axo
          außerdem kriegt man - insofern man den session.save_path nicht selbst setzen kann, bei einem ungesicherten shared hoster die sessions vom nachbarn auch noch mit.
          Wenn dem so wäre, würde ich umgehend den Hoster wechseln, denn das hieße auch, andere könnten in meinen Sessions rumfuhrwerken! Bei ordentlichem Hosting ist das nicht möglich.

          Kommentar


          • #6
            Original geschrieben von onemorenerd
            Wenn dem so wäre, würde ich umgehend den Hoster wechseln, denn das hieße auch, andere könnten in meinen Sessions rumfuhrwerken! Bei ordentlichem Hosting ist das nicht möglich.
            es war lange zeit bei h*rope möglich, wie's heute bei denen ist, kann ich nicht sagen, denn ich hoste mich inzwischen selbst.

            es ist auch mit sicherheit bei mehr ISPs möglich als man glaubt, schließlich landen die session-dateien im 'normalfall' in /tmp, und solange open_basedir nicht ordentlich konfiguriert wurde kann man darauf zugreifen. zumindest lesend.
            ein shopsystem würde ich also nicht gerade installieren, gell?


            grüße
            axo

            Kommentar


            • #7
              Hi!

              Ich glaube, ich werde die Daten, ob wer eingeloggt ist, in der DB mitspeichern und von Zeit zu Zeit wird halt überprüft, ob der Timeout erreicht ist oder nicht.

              Liebe Grüsse.

              Kommentar

              Lädt...
              X