Собственный счетчик посещений

Версия для печатиОтправить другуPDF version

В сети очень много сервисов предлагают установить свои счетчики посещений. Мы же в этот раз попробуем создать собственный счетчик посещений, который можно будет поместить на веб-страницу, своими силами.

Счетчик создаем с помощью PHP. Код счетчика очень простой:

<?php
$filename = "counter.dat";      // задаем переменную, указывая имя файла
if(file_exists($filename)){     // если файл присутструет, то
$fp = fopen($filename,"r");     // открываем соединение с этим файлом, причем только на чтение
if ($fp) {                      // проверяем, успешно ли открылось соединение.
$counter = fgets($fp,10);       // если успешно, считываем из открытого файла первые
                                // 10 символов в переменную счетчика
fclose($fp);                    // закрываем соединение
} else {                        // иначе
$counter = 0;                   // присваиваем переменной счетчика ноль
}
}
$counter++;                     // увеличиваем переменную счетчика на единицу
echo $counter;                  // выводим на экран переменную счетчика
$fp = @fopen($filename,"w");    // открываем соединение на запись с очисткой всего содержимого файла
if ($fp) {                      // если успешно, то...
$counter = fputs($fp,$counter); // записываем новое значение переменной счетчика в файл
fclose($fp);                    // закрываем файл
}
?>

Вот и все! Теперь можно устанавливать свои собственные счетчики на любых страницах сайта. Для этого указанный код вставляется в любое место нужной страницы. В этом месте будет выведено количество посещений.

ПРИМЕР: Вы пользователь, который посетил эту страницу.

Ваша оценка: Нет Средняя: 4.5 (17 голосов)

 Привет, спасибо за код! А

 Привет, спасибо за код! А может ты знаешь, как можно получить html - код счетчика?) Если проще то, я хочу сделать сайт на котором будут мои счетчики, и для каждого можно будет получить html- код для вставки на сайт.

Для этого необходима

Для этого необходима какая-либо БД (например MySQL) и  скрипт, который будет врисывать в поля БД количество обращений.

Где-то на просторах Интернета видел статью о организации такого сервиса.

А как насчёт атомарности

А как насчёт атомарности выполнения всего кода программы?
То есть не получится так, что один пользователь обращается к странице, скрипт открывает файл на запись, в этот момент другой пользователь обращается к странице, 2-я копия httpd запускает скрипт, который пытается открыть файл на чтение, но у него не получается из-за того, что файл уже открыт на запись 1-й копией httpd?

Это самый простой счетчик...

Это самый простой счетчик... Если нужно что-то более серьезное, смотрите варианты хранения данных в БД MySQL. Ну и не помешает дописать проверку на уникальность посетителя...

Да я без претензий.

Да я без претензий. ;-)

Просто подумал, может я чего не понимаю и описанная проблема не возникнет.

Проще установить готовый

Проще установить готовый cчетчик посещаемости для сайта, который не требует даже регистрации!

Есть много ресурсов, которые

Есть много ресурсов, которые предоставляют свои счетчики.

Сдесь же рассмотрен один из примеров, причем самый простой. Более правильно было бы каунты вписывать в какую-то БД с занесением текущей даты и айпишки. Потом выполнять проверку, не повторная ли это загрузка за сегодня... Поле для деятельности довольно широкое. Возможно когда-то и такой пример будет.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Вставай, Україно!

Литература