SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 22.09.2005, 09:26:53
Zudecke Zudecke ist offline
Junior Member
 
Registriert seit: Jun 2004
Ort: Weiden i.d.Opf.
Alter: 46
Beiträge: 315
Benutzer online

Hi,
wie kann man überprüfen, ob ein Benutzer online ist? Dachte daran einen Frame alle 2 Sekunden aktualisieren zu lassen, mit Rückgabewert an die Datenbank. Aber irgendwie ist das nicht so schön, wenn ständig im Hintergrund was aktualisiert wird. Ausserdem hab ich keine Frames...
Auf diversen Partnervermittlungsseiten klappt das ganz gut :-} . Kann mir jemand nen Tipp geben?
Mit Zitat antworten
  #2  
Alt 22.09.2005, 10:15:04
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: Benutzer online

naja, die meisten benutzerverwaltungen sag ich mal speichern ja, wann man zu letzt auf der seite aktiv war, und wenn das nicht zu lange zurück liegt, ist man eben noch eingelogged (okay, manchmal ist man auch für immer und ewig eingelogged).

jetzt muss man nur noch auslesen, wie viele mitglieder in den letzten xy minuten aktiv gewesen sind. ich denke 10 minuten ist ne ganz gute zeit. wer so lange auf ner seite nicht mehr rumgeklickt hat, liest entweder nen sehr langen artikel oder ist wirklich nicht mehr auf der seite.

aber wirklich ganz aktuell rauszufinden wer in dem moment alles online ist, ist fast unmöglich.
Mit Zitat antworten
  #3  
Alt 22.09.2005, 15:56:14
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Benutzer online

Zitat:
Zitat von Zudecke
Kann mir jemand nen Tipp geben?
Das HTTP Protokoll kennt den Status 'online' nicht; es ist ein zustandsloses Protokoll. Client schickt einen GET/POST/HEAD Request an den Server, auf den der Server reagiert. Was der Bediener des Clients nach diesem Request für weitere Aktionen plant, kann der Server nicht wissen. Der Server schickt auch diesbezüglichen keine Anfragen an den Client und der Client meldet auch nicht im Hintergrund, daß der HTML Text noch angezeigt wird.

Alle diesbezüglichen Angaben (auch in diesem Forenscript) basieren auf Sessions und der willkürlichen Festlegung, jede noch aktive Session als 'online' zu bewerten. Eine Session gilt so lange als aktiv, so lange sie noch nicht verfallen ist, weil der letzte Request mit der session_id weiter zurück lag als in session.gc_maxlifetime definiert ist.

Geändert von meikel (†) (22.09.2005 um 16:00:28 Uhr)
Mit Zitat antworten
  #4  
Alt 23.09.2005, 06:51:03
Benutzerbild von Klaus-die-Maus
Klaus-die-Maus Klaus-die-Maus ist offline
Anfänger
 
Registriert seit: Mar 2004
Ort: Usedom
Beiträge: 11
AW: Benutzer online

So machen es auch die ganzen Foren und Boards.

Du erstellt ne Session, und speicherst die Session-ID mit ein paar anderen Daten (Zeit, IP, Browser) um den User wiederzuerkennen in eine Datenbank. Dann setzt Du Dir ein Limit wie lange eine solche Session gültig sein darf (timeout).
Is die Session abgelaufen (jetztzeit um timeout größer als Zeit der gespeicherten Session) ist der User nicht mehr aktuell und wech.

Jetzt mußt Du nur noch in jedem Script die Session in der Datenbank aktualisieren solange es die selbe ist und die timeoutzeit nicht abgelaufen.

Mit einer User-Tabelle dazu könntest Du dann auch sagen wer Gast ist (keine User-ID) und wer ein angemeldeter Benutzer ist (User-ID).
__________________
Irgendwann klickt hier jeder mal rauf. Is nur eine Frage der Zeit...
Mit Zitat antworten
  #5  
Alt 24.09.2005, 09:29:09
Marilu Marilu ist offline
Member
 
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
AW: Benutzer online

Zitat:
Zitat von Zudecke
Dachte daran einen Frame alle 2 Sekunden aktualisieren zu lassen, mit Rückgabewert an die Datenbank. Aber irgendwie ist das nicht so schön, wenn ständig im Hintergrund was aktualisiert wird.
Es reicht doch, wenn Du die Bentzeranzeige aktualisierst, z. B. mit innerHTML.
Mit Zitat antworten
  #6  
Alt 24.09.2005, 09:40:36
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Benutzer online

Zitat:
Zitat von Marilu
Es reicht doch, wenn Du die Bentzeranzeige aktualisierst, z. B. mit innerHTML.
Nur kannst du mit innerHTML ja keine Abfragen, an die Datenbank senden, um die Zeit der letzten Aktion des Benutzers zu aktualisieren.
Mit Zitat antworten
  #7  
Alt 24.09.2005, 11:07:24
Marilu Marilu ist offline
Member
 
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
AW: Benutzer online

Zitat:
Zitat von xabbuh
Nur kannst du mit innerHTML ja keine Abfragen, an die Datenbank senden, um die Zeit der letzten Aktion des Benutzers zu aktualisieren.
Natürlich nicht, aber ich kann die Rückgabe der Datenbankabfrage per innerHTML an der gewünschten Stelle ausgeben.
Mit Zitat antworten
  #8  
Alt 24.09.2005, 11:42:13
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Benutzer online

Zitat:
Zitat von Marilu
Natürlich nicht, aber ich kann die Rückgabe der Datenbankabfrage per innerHTML an der gewünschten Stelle ausgeben.
Klar, das geht, so wie ich Zudecke verstanden habe, will er aber alle 2 Sekunden eine Abfrage an die Datenbank senden, mit der die Zeit der letzten Aktion des Benutzers aktualisiert wird.
Mit Zitat antworten
  #9  
Alt 24.09.2005, 14:25:34
Marilu Marilu ist offline
Member
 
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
AW: Benutzer online

Zitat:
Zitat von xabbuh
Klar, das geht, so wie ich Zudecke verstanden habe, will er aber alle 2 Sekunden eine Abfrage an die Datenbank senden, mit der die Zeit der letzten Aktion des Benutzers aktualisiert wird.
2 Sekunden ist wohl etwas heftig; auch bei einer gut besuchten Seite würde ich nicht unter 5 Min. gehen.
Mit Zitat antworten
  #10  
Alt 24.09.2005, 19:19:08
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Benutzer online

Zitat:
Zitat von xabbuh
Klar, das geht, so wie ich Zudecke verstanden habe, will er aber alle 2 Sekunden eine Abfrage an die Datenbank senden, mit der die Zeit der letzten Aktion des Benutzers aktualisiert wird.
Dann ist der Server t wie tot und g wie ganz tot.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dateien online bearbeiten JansonChristian Off Topic Area 16 01.05.2005 17:45:07
Probleme bei nem user online Script KiKoN PHP Grundlagen 15 28.11.2004 13:22:24
Online status prüfen momo.metti PHP für Fortgeschrittene und Experten 5 14.04.2004 21:42:02
Benutzer bei phpmyadmin bweichel PHP für Fortgeschrittene und Experten 4 28.07.2003 10:24:41
PHP ohne Benutzer laufen lassen toweter PHP Grundlagen 8 28.04.2003 13:18:42


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:51:37 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt