$tempmax = 180;
$userfile="visitonline.dat";
$tempfile="tempfile.dat";
$sec = time();
$expire=$sec + $tempmax;
$ipvisit="$REMOTE_ADDR";
function substrcount($haystack, $needle) {
$offset=0;
$i = 0;
$counter = 0;
while ($i==0) {
$longueur = strlen($haystack);
$position=strpos($haystack,$needle,$offset);
if ($position && ($offset + strlen($needle)) <= $longueur) {
$offset = $position+strlen($needle);
$counter++;
} else {
$i++;
}}
return $counter;
}
$cont=fopen("$userfile","r+");
$contenu="";
while (!feof($cont)) {
$suite=fgets($cont, 4096);
$contenu.="$suite";
}
fclose($cont);
$nbreligne=substrcount("$contenu","\n");
$visit = explode("\n",$contenu);
$j=0;
$ligneecrite="$ipvisit|$expire\n";
$tempfi=fopen("$tempfile","a+");
fwrite($tempfi,"$ligneecrite");
fclose($tempfi);
$nbreonline++;
while ($j < $nbreligne){
$idvisit=explode("|",chop($visit[$j]));
if ($idvisit[0] != $ipvisit){
if ($idvisit[1] >= $sec){
$ligneecrite="$idvisit[0]|$idvisit[1]\n";
$tempfi=fopen("$tempfile","a+");
fputs($tempfi,"$ligneecrite");
fclose($tempfi);
}}
$j++;
}
copy("$tempfile","$userfile");
$conte = fopen("$userfile","r");
$contenu2 = "";
$contenu="";
while (!feof($conte)) {
$suite2=fgets($conte, 4096);
$contenu2.="$suite2";
}
fclose ($conte);
$nbreligne2 = substrcount("$contenu2","\n");
$nbreonline = "$nbreligne2";
$testtemp=fopen("$tempfile","w+");
fseek($testtemp,0);
fputs($testtemp,"");
fclose($testtemp);
if ($nbreonline==1){$afficher="$nbreonline visiteur connecté ";}
if ($nbreonline>1){$afficher="$nbreonline visiteurs connectés ";}
if ($voir=="js"){
print "document.write('".$afficher."');";
}
if ($voir=="php"){
echo("$afficher");
}
if ($voir=="no"){
}
?> |
|