Простий лічильник відвідуваності для сайту на PHP

• 3810 переглядів

Простий лічильник відвідуваності для сайту на PHP

Існує досить багато готових лічильників - починаючи від   liveinternet   і   закінчуючи Яндекс.Метрика і Google Analytics. Всі вони надають свої користувачам найширший функціонал, але іноді бувають випадки, коли необхідний найпростіший лічильник відвідуваності без використання сторонніх сервісів, наприклад для виведення кількості відвідувань сторінки (як це зроблено у нас, навіть на цьому пості).  


У даному прикладі ми покажемо як створити найпростіший лічильник відвідуваності. Ми не будемо фіксувати сотні параметрів, як це робить сервіси статистики, а збережемо лише загальна кількість відвідувань.   Ви з легкістю зможете модернізувати лічильник, якщо це буде необхідно, для збору будь-якої інформації про Ваших користувачів і генерації різного роду звітів.


Для зберігання інформації ми будемо використовувати файлову систему, а саме файл - counter.txt. Необов'язково зберігати інформацію в файлі, ви можете використовувати і базу даних.   Логіка лічильника досить проста: коли користувач запитує сторінку, ми відкриваємо файл   counter.txt, зчитуємо поточну кількість відвідувань і збільшуємо його на 1, потім зберігаємо зміни в наш файл.


В програмуванні це виглядає приблизно так:

<?php	$count = 0; // по дефолту кол-во посещений будет равно нулю	// Открываем наш файл для чтения, mode = r (read). Если ошибка – прекращаем дальнейшее выполнение.	$file = fopen(“counter.txt”, “r”) or die("Can't read counter file – counter.txt");	// Считываем кол-во из открытого файла в переменную count	while (!feof($file)) {	$count = fgets($file);	}	// закрываем файл	fclose($file);	// выводим на экран кол-во посещений	echo “Сайт посетило {$count} человек”;	// увеличиваем старое кол-во на одно	$count++;	// открываем наш файл для записи mode = w (write)	$file = fopen(“counter.txt”, “w”);	// запишем изменения	fwrite($file, $count);	// закрываем файл	fclose($file);

?>


Працює цей скрипт тільки для однієї сторінки. Ви можете трохи змінити його, наприклад, для кожної сторінки створювати свій файл або ж використовувати базу даних зі структурою типу:

  id | counter 
  1 |     12
  2 |     22


Як бачите все досить просто.  

<strong>Отримати консультацію</strong> прямо зараз, в Telegram