Простой счетчик просмотров страницы сайта на php

    23 комментария 15218

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

Всем привет. Существует масса способов реализации счетчика просмотров страницы на PHP и в основном они работают с базой данных. Но если вам нужно прикрутить по-быстрому к одной странице счетчик посещений, то этот скрипт будет вам полезен. БД он не использует, а создает текстовый файл, в котором и хранит информацию о количестве просмотров. И, как обычно, предлагаю посмотреть как это выглядит:

Телеграм-канал serblog.ru

Демо

А вот и сам код:

1
2
3
4
5
6
7
8
9
< ?php 
$file = file("count.txt");
$count = implode("", $file);
$count++;
$myfile = fopen("count.txt","w");
fputs($myfile,$count);
fclose($myfile);
?>
<span>Просмотров: < ?=$count ?></span> // вывод счетчика

Наверное это самый простой из всех возможных счетчиков посещений. Как вы уже догадались он считает абсолютно все заходы, то есть хиты, а именно каждую загрузку сайта. Ни о какой уникальности речи не идет, да это и не нужно, для этого нужен совсем другой счетчик, с более сложной структурой. Таким образом мы можем показать посетителям какие записи имеют наибольшую популярность, а так же для красоты.

Вместо слова «Просмотров» можно установить картинку в виде глаза. Это сейчас не только модно, но так же экономит место и смотрится достаточно информативно без каких-либо дополнительных объяснений.

Любая сумма на развитие сайта

23 комментария
  1. Здравствуйте Александр!
    Нашла на Вашем сайте, то что давно искала, но я как говорят, чайник, и не понимаю как установить этот простой скрипт подсчета посетителей на свою страницу сайта.
    Прошу Вашей помощи.
    Готова оплатить вашу работу

  2. Юрий:

    Добрый день, Александр! 27-01-2021г. Ошибка вот такая: Unchecked runtime.lastError: The message port closed before a response was received ! Но считает так что прибавляет 3 каждый раз.

    • Александр Маврин:

      Скорее всего проблема в браузере и скорее всего у вас Хром. Попробуйте открыть страницу в другом браузере. Отпишитесь.

      • Юрий:

        Привожу свой код с добавлениями, которые позволяют записывать в файл имя браузера и время входа на сайт «Простой счетчик просмотров страницы сайта на php»

        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        
        Schet_USER_site_PHP_Счётчик_просмотров_страницы
         
        	body{
        		font-family: sans-serif;
        	}
        	.con3tent{
        		width: 80%;
        		margin: 0 auto;
        	}
        	p.views span{
        		position: relative;
        		top: -4px;
        	}
        //Счётчик просмотров страницы на PHP
      • Юрий:

        Пытаюсь отправить свой код с доработками

        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        
        < !DOCTYPE html>
        <html lang="ru">
        <head>
        <meta charset="UTF-8″/>
        <meta name="viewport" content="width=device-width, initial-scale=1.0″/>
        <title>Schet_USER_site_PHP_Счётчик_просмотров_страниц></title>
        <style type="text/css">
        body{
        font-family: sans-serif;
        }
        .con3tent{
        width: 80%;
        margin: 0 auto;
        }
        p.views span{
        position: relative;
        top: -4px;
        }
        </style>
        </head>
        <body>
        < ?php
        $file =@file(‘./tmp/counter.txt’);
        $count = @implode("", $file);
        $count++;
        $myFile = fopen(‘./tmp/counter.txt’, ‘w’);
        fputs($myFile, $count);
        fclose($myFile);
        $filename = ‘./tmp/example.log’;
        $ip = ($_SERVER["REMOTE_ADDR"]); // Определяем IP посетителя
        $bravo = ($_SERVER["HTTP_USER_AGENT"]);//Определяем браузер
        file_put_contents($filename, date([Y-m-d H:i:s]) . print_r($bravo, true) . PHP_EOL, FILE_APPEND | LOCK_EX);
        ?>
        <div class="con3tent">
        <h1>Счётчик просмотров страниц> на PHP</h1>
        <p class="views"><img src="./tmp/eye.svg" width="20″ alt="просмотров"/> <span>< ?= $count ?></span> </p>
        </div>
        </body>
        </html>
      • Юрий:

        Добрый день, Александр!
        Немного доработал Вашу программу и в другой файл вывожу название браузера и время входа на страницу сайта «Простой счетчик просмотров страницы сайта на php»
        Запускал сайт на разных брайзерах. Вот результат.

        [2021-01-28 10:02:57] Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko 1 3 5 7 =8 (содержимое counter.txt после подсчёта =8)
        [2021-01-28 10:02:57] Mozilla/5.0 (Windows NT 10.0; Win64; x64; Trident/7.0; rv:11.0) like Gecko

        Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393 1 2 3 4 5 =5 (содержимое counter.txt после подсчёта =5)

        [2021-01-28 10:24:21] Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0 =1 2 3 4 5 6 =6 (содержимое counter.txt после подсчёта =6)

        [2021-01-28 10:31:22] Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36 = 1 4 7 10 =12 (содержимое counter.txt после подсчёта =12)

        [2021-01-28 10:37:23] Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 YaBrowser/20.12.1.179 Yowser/2.5 Safari/537.36 1 3 5 7 9 11 =12 (содержимое counter.txt после подсчёта =12)

  3. Спасибо за информацию.

  4. Юрий, поясните пожалуйста новичку, а откуда PHP код берёт фаил eye.svg? Предполагаю, что в коде что-то нехватает.

    • Александр Маврин:

      Это картинка в виде глаза. Путь до нее прописан в HTML, а не в PHP.

  5. Здравствуйте. А как поставить этот скрипт на движок шаретроникс?

    • Александр Маврин:

      С данным движком не знаком. Вам лучше поискать решение с записью количества просмотров в БД. Или нужно только одну считать просмотры только одной страницы?

  6. Здравствуйте Александр.
    Спасибо за Ваш труд. Никак не устанавливается. У меня браузер «Уран» — это ранняя версия Хрома. На браузере «Атом» тот же глюк. Пробовал бесплатный счётчик вставить, в Ваш, — отсюда
    hostciti.net/stat. Бестолку. Очень хочется простейший, только для подсчёта посещений, счётчик для своего сайта. Растолкуйте, чайнику, как правильно установить Ваш счётчик.

    • Александр Маврин:

      У вас php код выводится на странице, а не должен. Для начала уберите пробелы между угловой скобкой и знаком вопроса (< ?ph). Попробуйте что-то вывести таким образом:

      < ?php echo 100; ?>
      Но это нужно делать в файле с расширением php.
      Пример: file.php
      Имейте в виду, что мой редактор автоматом ставит пробелы
      (< ?ph) вам нужно их убрать.

  7. Код Юрия не устанавливается. Поставил Ваш. Вырезал из Юрия счётчик и приклеил к Вашему. Всё гладко, но счетчик не работает… Сколько не ставил кодов из И-нета — ни один не установился. Видимо без пошаговой инструкции ловить нечего. Нашёл целый сайт со счётчиками,
    webscript.ru/scripts/PHP/Schetchiki
    но там не коды, а файлы, которые нужно устанавливать на сайт, а они не хотят, никак.
    Похоже, для таких случаев нужно иметь другие мозги. Увы. Сами-то мы не местные… Печально.

  8. Странный народ Айтишники… Зашёл на сайт где предлагают бесплатный счётчик. Дальше описывают как устанавливать к себе на сайт. Ворох указаний: перепишите, проставьте, уберите, добавьте и т.д. Притом что их терминология, для меня, как «новые ворота» — сплошные непонятки. Неужели нельзя сделать программу с самоустановкой или пошаговой инструкцией. А то кинут пригоршню разрозненных деталей деталей и считают что осчастливили всех.
    Доделайте до конца, тогда и денег вам не жалко, а то кинут «сырой фарш» и думают что и все им будут благодарны.

  9. А как сделать так, чтобы на сайте был фиксированный блок(как 8K SUBS), но двигался без задержки?

  10. Анатолий:

    Добрый день. Прям очень хочется ваш счетчик использовать, но не понимаю как. Взял код исходной страницы с Демо. Вставил. Все видно, но не считает. Помогите разобраться)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *