Я делаю счетчик посетителей для моего сайта, но он рассчитывает, когда страница обновляется. Я хочу рассчитывать только на уникальное посещение пользователя.
$logfile = "visitors.txt";
if (file_exists($logfile)) {
$handle = fopen($logfile, "r");
$log = fread($handle, filesize($logfile));
fclose($handle);
} else {
die ("The log file doesn't exist!");
}
`Seperate each logline`
$log = explode("\n", trim($log));
// Seperate each part in each logline//
for ($i = 0; $i < count($log); $i++) {
$log[$i] = trim($log[$i]);
$log[$i] = explode('|', $log[$i]);
}
Есть код, чтобы определить, была ли страница обновлена или нет:
if (isset($_SERVER['HTTP_CACHE_CONTROL']) && $_SERVER['HTTP_CACHE_CONTROL'] === 'max-age=0') {
//Code to execute when page refresh.
} else {
//Code to execute when page not refresh.
}
Если возвращается true
тогда страница обновилась, иначе нет.
РЕДАКТИРОВАТЬ: ПОПРОБУЙТЕ ЭТО
$pageRefreshed = isset($_SERVER['HTTP_CACHE_CONTROL']) && $_SERVER['HTTP_CACHE_CONTROL'] === 'max-age=0';
if (!$pageRefreshed) {
$count = (string) $getvisitorcount[0]["count"];
$noZeros = 7;
$displayZeros = 7 - strlen($count);
$visitor = "";
for ($i = 1; $i <= $displayZeros; $i++) {
$visitor .= (string) 0;
}
}
Других решений пока нет …