user online ?

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

  • user online ?

    Hallo,

    ich habe ein login formular auf meiner website.

    nun möchte ich sehn welche user gerade online sind.
    beim login kann ich ja eine feld der user-datenbanktabelle (z.B. online) auf 1 setzen, damit ich weiss dass sich der suer auf der seite befindet.

    nachdem login wird sein username in einer session registriert.

    wie kann ich nun das feld wieder auf 0 setzen wenn der user die seite verlässt.

    dies wird häufig in foren angewendet.

    oder gibt es vielleicht ne andere möglichkeit (viell. über sessions) zu prüfen wer von den angemeldeten usern online ist.

    vielen Dank!

    mfg
    mooksa
    Es muss nicht alles einen Sinn ergeben

  • #2
    Folgende funktionsweise:

    Brauchst folgende Dinge in einer DB:
    - Username (Gast oder Name)
    - Zeit (timestamp)
    - IP
    - weitere Dinge können natürlich noch optional hinzu!

    User kommt auf die Seite -> Eintrag in DB
    User suft auf der Seite -> Eintrag aktualisieren
    User ist nicht mehr auf der Seite
    Neuer User kommt auf die Seite -> DB wird aktualisiert, alte Einträge (älter als ca. 15 min. werden gelöscht)

    gruss

    Kommentar


    • #3
      register_shutdown_function ( string func)...

      die als parameter übergebene Funktion wird dann bei script-ende aufgerufen...
      eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

      Kommentar


      • #4
        Du kannst auch einfach im Datensatz des Benutzers 'nen LastVisit speichern ... dann definiert Du wie lange nach seinem LastVisit ein Benutzer noch als Online gezählt werden soll ... (z.B. 10 Minuten) .... und dann selektierst du halt alle bei denen LastVisit nicht länger als X Minuten zurückliegt ... .
        carpe noctem

        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

        Kommentar


        • #5
          Danke!

          Hallo,

          danke für die vielen und sehr schnellen tipps.

          hab mich für folgende variante entscheiden:
          in der db-tabelle gibts ein feld namens 'lastlog'. Dieses wird beim login und beim surfen auf der seite aktualisiert.

          In der Useronline liste werden dann nur die user ausgelesen deren lastlog jünger als 5 min ist.

          hoffe das geht so.

          mfgsen
          flowjob
          Es muss nicht alles einen Sinn ergeben

          Kommentar

          Lädt...
          X