Momentan auf der Seite Online

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      Momentan auf der Seite Online

      Hi,

      geht das mit irgendeinem Script,
      das man die aktuellen Besucher der Seite anzeigen lassen kann?
      Mir schwebt da nen online counter direkt auf der login seite vor...

      Hab schon gesucht wie irre, aber immer nur was in php gefunden, und ich wüsste nicht das php auf der login seite funktioniert.

      lg,
      rene
      Gut, hab schnell was zusammengeschustert und auch schon getestet ;)

      Öffne phpMyAdmin und führe folgenden Query aus:

      Quellcode

      1. CREATE TABLE IF NOT EXISTS `Online` (
      2. `IP` varchar(15) default NULL,
      3. `Datum` datetime default NULL
      4. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


      Danach erstellst du dir einen Ordner /php/ im WWW Verzeichnis deines Chats und erstelle zuerst eine Datei config.inc.php (die werden wir für spätere Addons sicherlich noch gut gebrauchen können):

      Quellcode

      1. <?
      2. $host = ""; // Hostname
      3. $sqluser = ""; // SQL Username
      4. $sqlpass = ""; // SQL Passwort
      5. $db_name = ""; // SQL Datenbank
      6. mysql_connect($host,$sqluser,$sqlpass) or die("Cannot connect to the database.");
      7. mysql_select_db($db_name) or die("Cannot select database.");
      8. ?>


      Wenn du die Daten eingetragen hast, erstelle eine Datei namens onlinecounter.php im selben Verzeichnis mit folgendem Inhalt:

      PHP-Quellcode

      1. <?php
      2. require 'config.inc.php';
      3. $sql = "SELECT COUNT(*) as Anzahl FROM Online WHERE IP = '".$_SERVER['REMOTE_ADDR']."'";$result = @mysql_query($sql);
      4. $row = @mysql_fetch_assoc($result);
      5. if($row['Anzahl'])
      6. {
      7. @mysql_query("UPDATE Online SET Datum = NOW() WHERE IP = '".$_SERVER['REMOTE_ADDR']."'");
      8. }
      9. else
      10. {
      11. @mysql_query("INSERT INTO Online (IP, Datum) VALUES ('".$_SERVER['REMOTE_ADDR']."', NOW())");
      12. }
      13. @mysql_query("DELETE FROM Online WHERE DATE_SUB(NOW(), INTERVAL 15 MINUTES) > Datum");
      14. $sql = "SELECT COUNT(*) as Anzahl FROM Online";
      15. $result = @mysql_query($sql);
      16. $row = @mysql_fetch_assoc($result);
      17. @header("Content-type: text/javascript");
      18. echo 'document.write(\''.$row['Anzahl'].'\');';
      19. exit();
      20. ?>


      Das war's schon fast. Im Chat kannst du nun folgendes verwenden:

      Quellcode

      1. <script type="text/javascript" src="php/onlinecounter.php"></script>


      Dieser Code zeigt dir dann am Ende an, wie viele User auf deiner Seite online sind. Die Einträge werden gelöscht, wenn sie älter als 15 Minuten sind. Das lässt sich natürlich selbst definieren. Dafür einfach den Wert in der Zeile

      Quellcode

      1. INTERVAL 15 MINUTES


      anpassen.

      Testen kannst du das Ganze unter lotte.softcreatr.de

      Viel Spaß damit :D