PHP-Guide.net

PHP Skripte


Link-Empfehlungen

619 Views

PHP-Skripte: Counter

Anzahl der User auf der Webseite

Dieses Skript zählt die Anzahl der Internet-Nutzer, die sich gerade auf Ihrer Webseite befinden. Dabei werden einzelnen User durch die Session-ID unterschieden.

Dies hat den Vorteil, dass einzelne User erkannt werden, auch wenn diese sich eine IP-Adresse teilen (z.B. durch ein Netzwerk).

Datenbank-Tabelle erstellen:

CREATE TABLE 'user_online' (
'session' char(100) NOT NULL default '',
'time' int(11) NOT NULL default '0'
) TYPE=MyISAM;

PHP-Datei:

<?php
session_start();
$session = session_id();
$time = time();
$time_check = $time - 600; // 10 Minuten

$host = "localhost"; // Host name
$username = ""; // MySql Username
$password = ""; // MySql Passwort
$db_name = ""; // Datenbank-Name
$tbl_name = "user_online"; // Tabellen-Name

// Verbindung mit der Datenbank wird hergestellt
mysql_connect("$host", "$username", "$password") 
or die ("cannot connect to server");
mysql_select_db("$db_name") or die ("cannot select DB");

$sql = "SELECT * FROM ".$tbl_name." WHERE session = '".$session."'  ";
$result = mysql_query($sql);

$count = mysql_num_rows($result);

if($count == "0"){
  $sql1 = "INSERT INTO ".$tbl_name." (session, time) 
               VALUES ('".$session."', '".$time."')  ";
  $result1 = mysql_query($sql1);
} else {
  $sql2 = "UPDATE ".$tbl_name." SET time = '".$time."' 
               WHERE session = '".$session."'  ";
  $result2 = mysql_query($sql2);
}

$sql3 = "SELECT * FROM ".$tbl_name."  ";
$result3 = mysql_query($sql3);

$user_online = mysql_num_rows($result3);

echo "User online : ".$user_online." ";

$sql4 = "DELETE FROM ".$tbl_name." WHERE time < ".$time_check."  ";
$result4 = mysql_query($sql4);
mysql_close();
?>

 


Funktionen:
Schlagworte: online, User, Skript, Seite, Quelltext, PHP, Counter, Anzahl,