Ragazzi stavo cercando uno script in php che si appoggia su un file txt esterno che mi conti gli user online. Potreste darmi una dritta? O una soluzione?...
Grazie in anticipo![]()
P.S.
Purtroppo per il momento sono senza mysql.![]()
Ragazzi stavo cercando uno script in php che si appoggia su un file txt esterno che mi conti gli user online. Potreste darmi una dritta? O una soluzione?...
Grazie in anticipo![]()
P.S.
Purtroppo per il momento sono senza mysql.![]()
<?
#================================================= ===
#= Script: Live Traffic 5
#= Version: 5.0
#= Author: Gregg Kenneth Jewell
#= Email: greggjewell@yahoo.com
#= Website: www.arecaweb.com/php/livetraffic/
#= Copyright: 2003-2004
#================================================= ===
################################################## ###
#= SETTINGS =#
################################################## ###
function CountUsers () {
$Expire = "30";
$AutoMonitor = "1";
$AutoCorrect = "";
$AutoRefresh = "";
$RefreshRate = "";
$file = "online.log";
$MaxFileSize = "10";
$UsersLogged = 0;
if (!file_exists($file)) {
echo "file non trovato";
return 0;
}
$Interval = mktime() - $Expire;
$MaxFileSize = $MaxFileSize * 1000;
$NewUser = mktime()."|".$_SERVER['REMOTE_ADDR']."[x]";
if (filesize($file) > $MaxFileSize and $AutoMonitor == "1") {
#================================================= ================
#= OVERWRITE ALL OLD USER INFO
#================================================= ================
$LoggedUsers = ReadLog($file);
for ($x=0;$x<count($LoggedUsers);$x++) {
if ($Interval <= trim(substr($LoggedUsers[$x],0,10)))
$SavedUsers .= $LoggedUsers[$x]."\r\n";
}
$SavedUsers .= $NewUser;
$handle = @fopen($file,"w");
@flock($handle,LOCK_EX);
@fwrite($handle,$SavedUsers."\r\n");
@flock($handle,LOCK_UN);
@fclose($handle);
}
else {
#================================================= ================
#= APPEND USER INFO TO LOG FILE
#================================================= ================
$handle = @fopen($file,"a");
@flock($handle,LOCK_EX);
@fwrite($handle,$NewUser."\r\n");
@flock($handle,LOCK_UN);
@fclose($handle);
}
$LoggedUsers = ReadLog($file);
#================================================= ================
#= COUNTS CURRENT ONLINE USERS
#================================================= ================
for ($x=0;$x<count($LoggedUsers);$x++) {
$UserInfo = explode("|",$LoggedUsers[$x]);
// CHECKS FILE DATA FOR REPEAT USERS
if (isset($CheckUsers)) {
if ($Interval <= trim($UserInfo[0]) and !stristr($CheckUsers,trim($UserInfo[1]))) {
$CheckUsers .= $UserInfo[1];
$UsersLogged++;
}
} else {
$CheckUsers .= $_SERVER['REMOTE_ADDR'];
$UsersLogged++;
}
}
return $UsersLogged;
}
#================================================= ================
#= READ LOG FILE FUNCTION
#================================================= ================
function ReadLog($file) {
$handle = @fopen($file,"r");
@flock($handle,LOCK_SH);
$LoggedUsers = @fread($handle,filesize($file));
@flock($handle,LOCK_UN);
@fclose($handle);
$LoggedUsers = trim($LoggedUsers);
$LoggedUsers = substr($LoggedUsers,0,-3);
$LoggedUsers = explode("[x]",$LoggedUsers);
return $LoggedUsers;
}
?>