Ankündigung

Einklappen
Keine Ankündigung bisher.

User Management wie aufgbauen ?

Einklappen

Neue Werbung 2019

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

  • #16
    Zitat von da.eXecutoR Beitrag anzeigen
    Ich würde gerne für meine Webanwendung die Möglichkeit haben die angemeldeten Benutzer zu überwachen.
    Implementiere Flash Webcam plugin in deine seite, sobald die leute draufgehen kannst du dann sehen was die zu hause tun
    apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

    Kommentar


    • #17
      Zitat von BlackScorp Beitrag anzeigen
      Implementiere Flash Webcam plugin in deine seite, sobald die leute draufgehen kannst du dann sehen was die zu hause tun
      Ich meinte damit nicht auf die Bigbrother art

      Wäre einfach interessant zu sehen wer sich grad auf dem System befindet, wieviele Leute angemeldet sind und wenn man mal was am System machen muss Ihnen eine Nachricht senden kann. ( Letzteres hab ich jetzt mit jqueryUI hinbekommen -> cool
      It's not a bug. It's a feature!

      Kommentar


      • #18
        Zitat von Arne Drews Beitrag anzeigen
        Das eine schließt das andre ja nicht aus.
        Wobei ich mich frage, was Du mir "Session Ordner" meinst?

        Ich würd folgende Ansätze beachten
        1. User Verwaltung über Session-Management
        2. Online-Status und letzte Aktivität der User in DB festhalten
        3. CronJob, der alle Xmin/h die DB nach der letzten Aktivität abfragt und bei Inaktivität den Onlinestatus ausschaltet

        EDIT
        Session-Ordner war wohl als physikalischer Ordner im Dateisystem gemeint, den Du für die Session-Informationen verwenden wolltest?!
        Dann gebe ich nikosch recht, das kann zum Wahnsinn werden...
        Punkt 3 finde ich ein wenig unsinnig
        Es reicht doch die letzte Aktivität in der DB immer zu aktualisieren und dann zu schreiben:
        In den letzten 5 Minuten war 'Blubb' online.
        o.Ä.
        cu
        Grüße
        Destruction
        "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

        Kommentar


        • #19
          Zitat von Destruction Beitrag anzeigen
          Punkt 3 finde ich ein wenig unsinnig
          Es reicht doch die letzte Aktivität in der DB immer zu aktualisieren und dann zu schreiben:
          In den letzten 5 Minuten war 'Blubb' online.
          o.Ä.
          cu
          Grüße
          Destruction
          Das ist überhaupt nicht unsinnig, denn wenn sich der User nicht explizit ausloggt steht dann auch nach 10 Stunden noch der User Blubb war vor 5 Minuten online. Oder es steht der User war vor 10 Stunden und 5 Minuten online. Beides entspricht nicht dem was ich will.

          Der Ansatz mit dem CronJob ist schon richtig. Ich will schliesslich nur Online/Offline wissen.

          Gruss

          eXe
          It's not a bug. It's a feature!

          Kommentar


          • #20
            dann schränke die zeit ein wenn ein user 30 sekunden lang nichts gemacht hat auf der page, kannst du davon ausgehen dass er nicht mehr auf der page ist(wenn man keine langen texte auf der seite hat). bei mir sage ich einfach dass wenn ein user 1 minute nichts gemacht hat, ist der offline.
            apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

            Kommentar


            • #21
              Ich hab mir da eher überlegt den Onlinestatus via ajax automatisch Updaten zu lassen
              It's not a bug. It's a feature!

              Kommentar


              • #22
                und im welchen interval hast du vor ein ajax request zu senden? jede sekunde? also ich denke der server würde dir danken wenn du einfach nur anzeigst wann der benutzer das letzte mal was getan hat
                apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                Kommentar


                • #23
                  Zitat von BlackScorp Beitrag anzeigen
                  und im welchen interval hast du vor ein ajax request zu senden? jede sekunde? also ich denke der server würde dir danken wenn du einfach nur anzeigst wann der benutzer das letzte mal was getan hat

                  Nicht jede Sekunde, vielleicht jede Minute. Es handelt sich hierbei ja um eine Webapplikation und nicht eine Community Webseite. Das heisst der Besucher ist wohl möglich der ganze Tag eingeloggt auf der Seite, was aber nicht heisst dass er alle 10 Minuten darin rumklicken muss.

                  Und wenn es 500 Benutzer sind die gleichzeitig online sind, pro Sekunde macht dies dann 8.3 ajax requests. Dies sollte der Server schaffen denke ich

                  Aber klar ich geb dir Recht, es ist eine Ressourcennutzung die man mit einem kleinen Kompromiss einsparen könnte.

                  Ich finde den Punkt eben interessant eine Client/Server Anwendung via Web realisieren zu können mit allem was dazugehört. Wie hald auch nen KeepAlive traking in diesem Fall.

                  Mehr interaktivität anstatt der herkömlichen "PULL" Kommunikation.
                  It's not a bug. It's a feature!

                  Kommentar


                  • #24
                    Das mit dem AJAX Request hört sich nett an, habe ich auch mal umgesetzt, ABER =>

                    Wenn der Benutzer die Seite im Hintergrund offen hat (zB andere Tab, anderes Browserfenster) wird er weiterhin als "aktiv" gezeigt (WAS ER HIER ABER NICHT IST! ) und es werder unnötigerweise zig AJAX Requests an den Server gefeuert.


                    Edit: 500 Benutzer gleichzeitig +1 AJAX Request / Sek (zusätzlich zu den normalen Requests) = XXX; wie kommst du da auf 8.3?

                    Kommentar


                    • #25
                      ich würde sagen, verwende erstmal die übliche methode und warte bis WebSockets – Wikipedia ausgereift sind oder gar standard werden danach kannst du auf die sekunde genau prüfen ob der benutzer online ist.

                      aber mal zu den ajax geschichten, was willst du denn abfragen mit dem ajax request? letze aktion ? oder ob eine variable auf 1(true) gesetzt ist? du musst ja im grunde mit jedem user einen ajax request , jede minute an den server schicken um quasi bescheid zu sagen:"Hier ich bin noch auf der Seite". dann stimmt deine rechnung ja nicht mehr bei 500 besuchern, wären es 500 ajax requests an den server pro minute
                      apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                      Kommentar


                      • #26
                        Zitat von ragtek Beitrag anzeigen
                        Edit: 500 Benutzer gleichzeitig +1 AJAX Request / Sek (zusätzlich zu den normalen Requests) = XXX; wie kommst du da auf 8.3?
                        Er will nur minütig Ajaxrequests senden.
                        500 / 60 = 8,3.. Requests pro Sekunden
                        MfG

                        Kommentar


                        • #27
                          Zitat von gs93 Beitrag anzeigen
                          Er will nur minütig Ajaxrequests senden.
                          500 / 60 = 8,3.. Requests pro Sekunden
                          MfG
                          ja aber es geht nicht vom admin interface jede minute, jede client abzufragen, "bist du denn online?". es geht nur wenn jeder client sich jede minute meldet und sagt:"Hey ich bin online!".
                          apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                          Kommentar


                          • #28
                            Zitat von gs93 Beitrag anzeigen
                            Er will nur minütig Ajaxrequests senden.
                            500 / 60 = 8,3.. Requests pro Sekunden
                            MfG
                            Danke

                            Genau Blackscorp, so hab ich mir das gedacht. Es geht aber noch weiter, ich hab das Gestern Abend auch mal kurz realisiert.

                            Ich hab einen Besucher im "Firefox" ( damit ich zwei Sessions habe ) der auf der Seite ist.

                            Mit dem IE füge ich in die MySQL Tabelle "Messages" eine neue Nachricht ein für den im Firefox eingeloggten Benutzer z.Bsp. "Hallo du kleiner FF User!"

                            Im Firefox erscheint dann automatisch nach 10 Sekunden via jqueryUI ein neuer Dialog mit "Hallo du kleiner FF User!"

                            Das ist wirklich cool
                            It's not a bug. It's a feature!

                            Kommentar


                            • #29
                              und wie hast du das realisiert? dein FF benutzer hat die ganze zeit ajax requests an den server geschickt, der server hat die nachricht aus der datenbank gelesen, und die dann angezeigt, richtig?

                              beim online status ist es ja anders. du musst mit jedem benutzer via ajax eine php datei ausführen, die in eine datenbank o.ä. reinschreibt :"Benutzer xyz ist online". Im admin interface fragst du dann die schnittstelle ab und lässt dir die online benutzer anzeigen. denn du hast keine andere möglichkeit von deinem admin interface(client) auf den benutzer der seite(client) zu zugreifen, du brauchst ein zwischenmedium. der client kommuniziert ja nur mit dem server und nicht mit anderen clients, es wäre eventuell mit sockets oder so realisierbar.

                              was ich halt sagen will du hast zur auswahl:

                              1) viele ajax requests an den server zu senden, also von jedem user aus

                              2) einfach prüfen wann der user seine letzte aktion ausgeführt hat

                              der rest wäre zu umständlich und auch unnötig , denke ich
                              apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                              Kommentar


                              • #30
                                Ja das ist richtig. Ich habe eine jquery funktion mit setIntervall welche in der messages table nach einer Nachricht sucht für den angemeldeten Benutzer und wenn vorhanden gibt er ein DIV mit dem Inhalt der Nachricht zurück. Die ajax Funktion erstellt darauf hin mit $('msgbox').dialog(); das Benachrichtigungsfenster.

                                Ja klar schickt jeder Client das KeppAlive request. Macht aber trotzdem nur 8.3 / Sekunde in meinem Beispiel
                                It's not a bug. It's a feature!

                                Kommentar

                                Lädt...
                                X