kostenloser Webspace werbefrei: lima-city


PHP: Script aktuelle Besucher online

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    x-web

    Kostenloser Webspace von x-web

    x-web hat kostenlosen Webspace.

    Hallo Zusammen,

    Ich such jetzt bestimmt schon seit ner halben Stunde nach nem einfachen PHP Script, dass mir anzeigt wie viele Benutzer gerade aktuell online sind, mehr nicht. Hab aber bisher nichts brauchbares gefunden entweder sind die Scripts zu kompliziert oder man hat keinen Zugriff auf den Source.

    Könnt ihr mir helfen?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. wenn du mit session id\'s arbeitest mach doch einfach das eine neue Session ID ein neuer benutzer ist wenn einer sich abmeldest wird einer vom counter gemacht so will ich es auch machen für mein forum.
  4. Hi,

    du kannst nie genau sagen, wieviele Leute online sind. HTTP ist ein Zustandsloses Protokoll, daher kannst du nur Vermutungen darüber anstellen, ob jemand online ist. Genau sagen kannst du es nicht. Aber die einfachste Möglichkeit ist, wie bereits gesagt, mit Sessions zu arbeiten. Lass dir in eine DB eintragen wer sich eingeloggt hat und trage die aus, die sich ausgeloggt haben oder deren Sessions abgelaufen sind.

    Yazurah
  5. mit ajax könnte man nen kleines programm schreibseln, welches schaut ob jemand online ist oder nicht..

    Ansonsten kann man auch IP und den timestamp der letzten Aktion von Besucher xy speichern und sagen, alle die in den letzten 5 minuten eine Aktion gemacht haben, gelten als Online und immer wenn ne neue Aktion gemacht wird zb neuer Seiten aufruf, dann wird der Timestamp aktualisiert.. ;)
  6. malia

    Moderator Kostenloser Webspace von malia

    malia hat kostenlosen Webspace.

    Meinst du so etwas:

    http://www.g-orgus.de/homepage-optimierung/php-scripte/user-online-script.php

    ist aber ohne Gewähr, ich habs selber nicht getestet.

    Malia
  7. p***********d

    Also das hier
    $ip = getenv(\"REMOTE_ADDR\");

    weiß ich nicht ob das funktioniert, ich würds mit $ip = $_SERVER[\'REMOTE_ADDR\']; machen. Ansonsten scheint das Skript aber ganz ordentlich zu sein.


    Beitrag geändert: 19.3.2008 16:19:10 von pinguinfreund

  8. Also das hier
    $ip = getenv(\"REMOTE_ADDR\");

    weiß ich nicht ob das funktioniert, ich würds mit $ip = $_SERVER[\'REMOTE_ADDR\']; machen. Ansonsten scheint das Skript aber ganz ordentlich zu sein.


    Beitrag geändert: 19.3.2008 16:19:10 von pinguinfreund

    Sollte beides funktionieren. Allerdings gibt es noch weitere mögliche Einträge in $_SERVER in der die IP stehen könnte.
    Bei Interesse PN an mich.

    MfG Lucas
  9. Autor dieses Themas

    x-web

    Kostenloser Webspace von x-web

    x-web hat kostenlosen Webspace.


    Meinst du so etwas:

    http://www.g-orgus.de/homepage-optimierung/php-scripte/user-online-script.php

    ist aber ohne Gewähr, ich habs selber nicht getestet.

    Malia


    Genau sowas hab ich gesucht - nur eine Datei und kein Mysql

    Vielen Dank für die Antwort

  10. dies habe ich mal in eine seite von mir eingebunden:

    <?php
    /**********************************
    * by Michael Müller ***************
    * Dieser Hinweis darf nicht *******
    * entfernt werden *****************
    **********************************/
    
    $datei = \"include/counter/useronline.dat\";
    $min = 5;
    $time = time() - $min*60;
    $current_ip = $_SERVER[\'REMOTE_ADDR\'];
    // alte Beiträge löschen
    if(file_exists($datei)) {
        $lines = file($datei);
        foreach($lines as $key=>$data) {
            list($ip, $timest) = explode(\"|\", $data);
            if(trim($timest) < $time
                || trim($ip) == $current_ip) {
                unset($lines[$key]);
            }
        }
    }
    $lines[] = $current_ip.\"|\".time().\"\\r\\n\";
    $save = implode(\"\", $lines);
    $handle = fopen($datei, \"w\");
    fputs($handle, $save);
    fclose($handle);
    $user = count($lines);
    echo \"User: $user\";
    ?>


    müsste sich eigentlich von allein erklären ;) speichert timestamp und ip der letzten 5 minuten und löscht die älteren, somit hast du immer eine genaue zahl wer die letzten 5 die seite aufgerufen hat. und das ganze funktioniert ohne mysql, einfach nur mit ner datei, die du auch umbennen kannst
  11. Hier gibts ein schön erklärtes mit DB: http://tut.php-quake.net/online.html ;)
  12. Autor dieses Themas

    x-web

    Kostenloser Webspace von x-web

    x-web hat kostenlosen Webspace.


    Hier gibts ein schön erklärtes mit DB: http://tut.php-quake.net/online.html ;)


    Danke, sieht übersichtlich aus. Ich werds mal durcharbeiten. Wenn ichs je nicht blicken sollte greife ich eben auf die Oben genannten Scripts zurück.

    Danke nocheinmal für eure Hilfe.
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!