PHP4-Forum
Forum | Befehle | MySQL | Beispiele | Newsletter | Suche | Home

Untermenü

Beispiele
Datenbankbasiert
Dateibasierte
Spiele
Sonstige

Zu dieser Seite

Datenbankbasiert
Telefonbuch
Backup einer DB
Import: Datei => DB
Artikelverwaltung
Benutzer-Login
Gästebuch
Newsletterversand
User-Online
Zufällige Auswahl
Forum Software
Newsletter
Login (PHP Modul)
Umfrage
Zeigen Sie Ihren Besuchern, wie viele User auf Ihren Seiten sind

Download | Testen

Mit diesem einfachen Beispiel stellen Sie fest, wie viele User sich gerade auf Ihren Seiten befinden. Deses Beispiel erkennt den User anhand seiner IP-Adresse. In de Hauptfunktion user_online können Sie Ihre Einstellungen vornehmen.

Da man nie 100% sagen kann, dass der User immer noch auf Ihrer Seite ist, geht man davon aus, dass der User jede 5 Minuten (300 Sekunden) mind. eine Seite Aufruft.

Nun zur Installation: zu Anfang legen Sie bitte eine MySQL-Tabelle an:

CREATE TABLE user_online (
   ip char(15) NOT NULL,
   expire int(10) unsigned DEFAULT '0' NOT NULL,
   KEY ip (ip)
);


Und das hier ist die Funktion, die das System steuert:

<?php
function user_online() {
  // Einstellungen
  $HOST = "localhost";
  $ID = "root";
  $PW = "";
  $DB = "test";
  $tabelle = "user_online";
 
  $zeitspanne = 600; // in Sekunden
  $REMOTE_ADDR = getenv("REMOTE_ADDR");
 
  // MySQL Connect
  $conn_id = mysql_connect($HOST,$ID,$PW);
  mysql_select_db($DB,$conn_id);

  // Löscht alte Einträge
  mysql_query("DELETE FROM ".$tabelle." WHERE expire < ".time()."");
 


  // Versucht einen Datensatz zu ändern
  mysql_query("UPDATE ".$tabelle." SET expire = '".(time()+$zeitspanne)."' WHERE ip='".$REMOTE_ADDR."'");
  // Bei Mißerfolg wird ein neuer Datensatz eingefügt
  if(!mysql_affected_rows()) {
    mysql_query("INSERT INTO ".$tabelle." (ip,expire) VALUES ('$REMOTE_ADDR','".(time()+$zeitspanne)."')");
  }

  // Ermittelt aktive User
  $result = mysql_query("SELECT count(*) FROM ".$tabelle);
  return mysql_result($result,0);
}

// Aufruf der Funktion
echo user_online();
 

?>
Dienstleistungen | Werbung | Impressum | Sitemap | Kontakt | Email © 1999 - 2013 | Last Update: 10.09.2001