<?php

# PHP hit counter (PHPcount)
# Version: 1.0
# File name: counter.php
// SETUP YOUR COUNTER
// Detailed information found in the readme file

// Enable referer validation? 1 = YES, 0 = NO
$check_referer = 0;
// Domains that are allowed to access this script
$referers = array ("localhost","http://kirtan.longmusic.com");
// Get remote IP
$ip=$_SERVER['REMOTE_ADDR'];
$date_time = date('d-m-Y/H:i:s');
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$uname = getenv("username");  
#############################
#     DO NOT EDIT BELOW     #
#############################

// Get page and log file names
$page = htmlentities($_GET['page']);
$logfile = "logs/" . $page . ".log";
$log_file = "logs/" . $page . ".txt";

// If $check_referer is set to 1 and if HTTP_REFERER is set to
// a value let's check refering site
if ($check_referer == 1 && !(empty($_SERVER['HTTP_REFERER'])))
{
check_referer($_SERVER['HTTP_REFERER']);
}

// If the log file doesn't exist we start count from 1 ...
if (! @$file = fopen($logfile,"r+"))
{
$count="1";
}
// If the log file exist lets read count from it
else {
$count = @fread($file, filesize($logfile)) or $count=0;
fclose($file);
// Raise the value of $count by 1
$count++;
}

// Write the new $count in the log file
$file = fopen($logfile,"w+") or die("Can't open/write the log file, please CHMOD logs folder to 777 (rwx-rwx-rwx)!");
fputs($file, $count);
fclose($file);

// Write the new $ip in the txt file
$fp = fopen("$log_file", "a") or die("Can't open/write the log file, please CHMOD logs folder to 777 (rwx-rwx-rwx)!");
fputs ($fp,"  
($date_time) $ip ($host) $page $count $uname 
"); 
// flock($fp, 3);  
fclose($fp);

// Print out Javascript code and exit
echo "document.write('$count');";
// echo "document.write('$ip');";
exit();

// function that will check refering URL
function check_referer($thisurl) {
	global $referers;
		for ($i=0;$i<count($referers);$i++)
        	{
				if (preg_match("/$referers[$i]/i",$thisurl)) {return true;}
			}
	die("Invalid referer!");
}
?>