Счетчик php посещений, просмотров, скрипт
Счетчик посещений на php. Сделаем несколько вариантов счетчиков на php! Простой счетчик! Счетчик перезагрузок страницы без ограничений! И последний счетчик - он будет ограничен сессией! Скрипт счетчика очень простой! При загрузке страницы прибавить
Подробно о счетчике посещений для сайта
- Счетчик посещений на php(без ограничений). Формат файла, имя файла, путь:
- Счетчик посещаемости на php(с ограничением) Формат файла, имя файла, путь:
- Вывод счетчика в график. Пример счетчика в графике, счетчик восстановлен.
- Счетчик посещений запросы. Как получить количество посещений с другой страницы?
- Счетчик перехода по ссылке Пример вывода счетчика переходов
- Удаление счетчика перехода по ссылке Скачать счетчик + удаление счетчика.
- Почему счетчик в файле?
Алгоритм работы простого счетчика посещений на php.
Тестирование счетчика.
Что и где менять в файлах?
Скачать счетчик.
Логика скрипта подсчета уникальных посещений:
Что такое $id_page?
Тестирование счетчика.
Что и где менять в файлах?
Скачать счетчик.
Мне нужен счетчик с графиком.
Вывод результатов счетчика на экран
Посчитать
Скачать Счетчик перехода по ссылке.
Счетчик посещений на php(без ограничений).
Счетчик перезагрузок страницы или счетчик посещений - как вам нравится - без ограничений.
Описание простого счетчика посещений/перезагрузок.
Сколько раз вы перезагрузите страницу - столько раз счетчик("counter.php") засчитает перезагрузку страницы.
Счетчик php и примеры:
Php код счетчика находится в файле counter.php, по условию(if) открытие данного файла засчитываться не будет.
Файлы с со счетчиком внутри.
Два примера страниц со счетчиком, который был загружен с помощью include.
Чтобы убедиться, что и для файлов в другой папке счетчик тоже будет работать. Файл находится в другой папке "new_example.php" - new_example.php. Пути смотрим в адресной строке...
Формат файла, имя файла, путь:
Формат файла, где хранятся количество перезагрузок ".dat". Для данного типа файлов сделана отдельная папка "dat".
Уникальное имя для файла для записи перезагрузок:
Когда вы смотрите на файл, то в нём две переменные, которые будут создавать уникальный адрес для страницы.
Путь до папки файла куда инклудится счетчик.
Автоматическое определение пути:
Поскольку пути могут быть очень длинными, используем md5 для получения хеша данного пути.
Вторая уникальная переменная для уникальной папки:
Имя файла формируется автоматически исходя из названия файла, с заменой точки на нижнее подчеркивание.
Для файла "example.php":
Для файла "example_1.php":
Для файла "new_example.php":
Алгоритм работы простого счетчика посещений на php
Для каждой уникальной страницы с контентом, должен создаваться свой собственный уникальный файл, для записи количества просмотров.
А, что есть уникального у страницы, чтобы каким-то образом эту уникальность превратить в название файла для записи данных? Правильно - её адрес. Здесь может быть множество решений!
В переменную $counter получаем с помощью file_get_contents данные из файла и сразу прибавляем единицу.
С помощью функции file_put_contents перезаписываем данные в файле. Если данные записались, проверяем существует ли переменная $write, если да, то можно сообщить, что "Ваш вход засчитан" - эта информация пользователю не нужна, используется в момент тестирования счетчика.
Тестирование счетчика.
Для тестирования счетчика без ограничений сделал три страницы:
Что и где менять в файлах?
После того, как вы скачали архив со счетчиком...
Размещаем папку "dat" в любой части вашего сайта.
В файле counter.php заменяем путь от корневой до вашей папки dat. В файле ищем строку :
Теперь файл counter.php
Также... размещаем его в любой точке вашего сайта.
И в файлах, в которые будет вставляется(инклудится) счетчик меняем путь до файла counter.php
В файлах это путь :
Куда ставить код счетчика?
В файлах примеров стоит вот такой код счетчика, его помещаем на ту страницу, на которой надо считать количество посещений.
<?
$path_counter = $_SERVER['DOCUMENT_ROOT']. '/__a-data/___sale/php/counter_1/counter.php';
// заменяем(/__a-data/___sale/php/counter_1/) на свой путь, где у вас будет находится файл "counter.php"
include($path_counter);
?>
Скачать счетчик.
Скачиваем счетчик здесь.
Что в архиве?
В архиве папка "counter_1" со всеми файлами, что выше перечислены.
Счетчик посещаемости на php(с ограничением).
Что такое "Счетчик посещаемости на php(с ограничением)"? Нам нужен счетчик посещений по дням!
Один человек, один день + 1 в счетчик посещений!
Выше пунктом я сделал счетчик, который вполне нам подходит, только его нужно немного модернизировать!
Логика скрипта подсчета уникальных посещений:
Для ограничения счетчика будем использовать сессию.
По условию if будем проверять, была ли создана сессия для данной страницы.
Если нет, то записываем + 1.
Создаем сессию по адресу страницы $_SESSION[$id_page]
Как только сессия создана, более запись в файл не будет производиться. До того момента, пока сессия не уничтожится.
Формат файла счетчика, имя файла, путь:
Данный пункт почти копия счетчика 1, но чуть модернизируем.
Поскольку... файл данных ".dat" - это технический файл, то передавать в него название файла, где стоит счетчик не имеет особого смысла, то заменяем его полностью на "хеш"(md5) это будет $id_page.
Для ниже идущих трех примеров, три файла dat:
Что такое $id_page?
Этот же хеш будем использовать в сессии - сразу убьем двух зайцев.
Разберем на примерах :
Файл example_counter_2.php:
$id_page = 1292f3203c88e21726889f3a429b8573
Путь от корневой : /__a-data/___sale/php/counter_2/example_counter_2.php
Имя файла : 1292f3203c88e21726889f3a429b8573.dat
Смотри здесь : example_counter_2.php
Тестирование счетчика.
Три файла для тестирования счетчика с сессией.
Что и где менять в файлах?
Абсолютно тоже самое, что и в этом пункте, только будет отличаться последняя папка
Скачать счетчик с ограничением сессией.
Скачиваем счетчик здесь.
Что в архиве?
В архиве папка "counter_2" со всеми файлами, что выше перечислены.
Счетчик посещений запросы.
Как получить количество посещений с другой страницы?
Если вам требуется получить количество посещений с другой страницы, то вам нужно передать на неё адрес требуемой страницы.
На сайте я использую данный счетчик со времени, когда написал самый первый скрипт счетчика
Пример вы можете посмотреть здесь - справа от названия страницы - количество посещений страницы выводится из файла.
Пример 1). получения количества посещений с другой страницы.
Я сделал несколько примеров, которые вы видели выше... например вот этот пример счетчика:
a9e457ce444ae7d2c2f027406456e9f5_example_php.datСамое простое, что только можно придумать для вывода результатов счетчика это iframe
<iframe style="width: 100%; height: 26px;" src="https://dwweb.ru/__a-data/___sale/php/counter_1/dat/a9e457ce444ae7d2c2f027406456e9f5_example_php.dat" frameborder="0"></iframe>
Пример 2 получения количества посещений с другой страницы.
Берем путь от корневой до файла:
От корневой и выше на сервере:
Получаем по данном адресу количество посещений используя file_get_contents.
Выводим с помощью echo
Результат:
Вывод результатов счетчика на экран
См выше пункт - там полностью рассказан процесс получения результатов счетчика и примеры вывода этих счетчиков...
Посчитать уникальные посещения.
Уникальные посещения... пункт №2 полностью посвящен именно этому вопросу.
Счетчик перехода по ссылке.
В поисковых запросах увидел : "Счетчик перехода по ссылке."...
Логика скрипта - "Счетчик перехода по ссылке."
Существует некая страница с php скриптом, если вы её откроете, то увидите надпись : 
Добавляем ссылке get запрос... любая переменная...пусть это будет; "?count=" и равняться будет той странице, куда надо перейти, после того, как засчитается клик по этой странице...
Ссылка будет иметь вид типа:
В нашем случае:
Как считаем клики по ссылке?
Считаем только уникальные клики, сессия - основной инструмент.
Сессия может существовать от 3 часов и до... любой настройки php. Обычно 3-6часов.
Записываем все результаты в ассоциативный массив.
Где результат подсчета кликов по ссылке?
В папке - отдельный файл "index.php".
Bonus - сортировка... от самого большого числа к меньшему и обратно!
Примеры ссылок для подсчета кликов по ссылке.
Если вы открыли предыдущую ссылку, то увидели там... 5 ссылок, нажимая по любой из ссылок, в счетчик кликов прибавится +1, чтобы произошел +2 нужно, чтобы умерла существующая сессия:
Заходим на любой сократитель ссылок и сокращаем... например clck.ru.
Посмотрите в предыдущем абзаце первую ссылку - теперь посмотрим на сокращенную ссылку:
Скачать Счетчик перехода по ссылке.
Скачиваем "Счетчик перехода по ссылке" здесь.Удаление счетчика перехода по ссылке.
Я как-то совсем упустил в предыдущем пункте... а если например... потребуется какой-то счетчик удалить, по разным причинам!
Я вас должен предупредить!
Не буду, рассказывать всё, что было применено построчно... а перечислю, лишь темы, если есть уже ссылка на тему, будет ссылка:
Основной каркас скрипта - предыдущий пункт.
Если вы откроете страницу №2 - index_2.php , то справа, над числом, вы увидите три точки, на которые нажав, в новом окне будет строка "удалить счетчик". Появление - закрытие данного окна.
При нажатии на кнопку "удалить счетчик - отправляется " post запрос javascript на страницу php - "dal_id.php".
На странице php :
Получаем массив в строку file_get_contents.
Превращаем стерилизованную строку в массив с помощью unserialize.
Получаем post массив с данными ячейки, где записан счетчик.
Удаляем ячейку из массива.
Записываем серриализованный массив file_put_contents.
Выводим два варианта ответа:
Возвращенные данные :
Если вернулось "Что-то пошло не так!" выводим данную строку в блок, который появляется скрывается через время - о странице.
Если вернулся ключ ячейки, то удаляем строку с данными - outerHTML.
В архиве ранее показанный пример.
Файл - count.dat можно очистить, либо очистить с помощью кнопки удаления.
Создаете ссылки, выше уже было сказано о виде ссылки и размещаете их там, где вы хотите:
Открываем архив, внутри папка - бросаем её на сервер.
Смотрим статистику по ссылке:
Скачать счетчик + удаление счетчика.
С вас чашка кофе и забирайте весь код в сборе!
Почему счетчик в файле?
Вы можете задать вопрос: "Почему счетчик в файле" - почему не в базе данных...?
Дело в том, что как-то так само сложилось, что всё, что я когда либо делал за все 19 лет, что я в теме сайтостроения, я делал на файлах.
Поэтому для меня было бы странным ... если весь сайт на файлах..., а счетчик делать в базе данных.
Но вы можете спросить - почему счетчик не в том же файле контента?
Да... я частенько думал об этом!
Но тут возникает проблема..., что для вывода таких страниц, например как эта : список всех страниц со счетчиком - пришлось бы загружать все существующие страницы... - это было бы неподъемным.
Обратите внимание на то, что долбанные балбесы, которым делать нехрен, могут изгадить ваш список... поэтому... требуется проверка на существование ссылки!
Сверху вы видели моё предупреждение - а теперь давайте посмотрим, как оно должно срабатывать... для этого я сделаю ссылку, на файл, которого не существует:
В связи с тем, что... некоторые пользователи имеют отклонения от нормы... комменты закрыты до момента, как напишу скрипт, когда будут доступны только зарегистрированным, либо будет модерация комментов...
Свободно, комменты оставить более не получится!
Этим вы очень поможете проекту! Заранее огромное спасибо!