Как показать количества посетителей двумя кодами?

Ссылка скопирована
PHP
1 ответ

На странице сайта есть код который показывает количества посетителей в данный момент пока в файле session1.txt хранится информация (30 секунд).
И я хочу добавить тот же код на туже страницу, но с другим временем хранения информации в session2.txt (24 часа). Но так как на странице есть такой же код
<?php echo " ".sizeof(file($base)).""; ?> который показывает число, они не будут показывать каждый отдельную информацию из файлов session1 и session2
Как сделать чтобы каждый код показывал своё число, чтобы каждый транслирующий код был связан со своим кодом, так же как код связан с файлом?!

Вот код:

&lt;?php session_start(); //выделяем уникальный идентификатор сессии $id = session_id();  if ($id!="") {  //текущее время  $CurrentTime = time();  //через какое время сессии удаляются  $LastTime = time() - 30;  //файл, в котором храним идентификаторы и время  $base = "session1.txt";   $file = file($base);  $k = 0;  for ($i = 0; $i &lt; sizeof($file); $i++) {   $line = explode("|", $file[$i]);    if ($line[1] &gt; $LastTime) {    $ResFile[$k] = $file[$i];    $k++;   }  }   for ($i = 0; $i&lt;sizeof($ResFile); $i++) {   $line = explode("|", $ResFile[$i]);   if ($line[0]==$id) {       $line[1] = trim($CurrentTime)."n";       $is_sid_in_file = 1;   }   $line = implode("|", $line); $ResFile[$i] = $line;  }   $fp = fopen($base, "w");  for ($i = 0; $i&lt;sizeof($ResFile); $i++) { fputs($fp, $ResFile[$i]); }  fclose($fp);   if (!$is_sid_in_file) {   $fp = fopen($base, "a-");   $line = $id."|".$CurrentTime."n";   fputs($fp, $line);   fclose($fp);  } } ?&gt;  &lt;?php echo " &lt;b&gt;".sizeof(file($base))."&lt;/b&gt;"; ?&gt;

&lt;?php session_start(); //выделяем уникальный идентификатор сессии $id = session_id(); if ($id!="") { //текущее время $CurrentTime = time(); //через какое время сессии удаляются $LastTime = time() - 30; //файл, в котором храним идентификаторы и время $base = "session1.txt"; $file = file($base); $k = 0; for ($i = 0; $i &lt; sizeof($file); $i++) { $line = explode("|", $file[$i]); if ($line[1] &gt; $LastTime) { $ResFile[$k] = $file[$i]; $k++; } } for ($i = 0; $i&lt;sizeof($ResFile); $i++) { $line = explode("|", $ResFile[$i]); if ($line[0]==$id) { $line[1] = trim($CurrentTime)."n"; $is_sid_in_file = 1; } $line = implode("|", $line); $ResFile[$i] = $line; } $fp = fopen($base, "w"); for ($i = 0; $i&lt;sizeof($ResFile); $i++) { fputs($fp, $ResFile[$i]); } fclose($fp); if (!$is_sid_in_file) { $fp = fopen($base, "a-"); $line = $id."|".$CurrentTime."n"; fputs($fp, $line); fclose($fp); } } ?&gt; &lt;?php echo " &lt;b&gt;".sizeof(file($base))."&lt;/b&gt;"; ?&gt;

Дополнительно:

Ответы:

Разные URL на два дифференцированных PHP-файлам показать разный sizeof().
Если хочется единый файлом - используйте в URL параметр, стандартный GET существует.

P.S. Каков вопрос - таков и ответ. Мы тоже умеем лепить и терять слова в случайном порядке русского вроде языка!

  • Не получается, я плохо понимаю PHP
  • Тогда копируйте ваш файл со скриптом в файл с другим именем, меняйте в нём строки:
    $LastTime = time() - 30; $base = "session1.txt";

    $LastTime = time() - 30; $base = "session1.txt";

    на новые:

    $LastTime = time() - 86400; $base = "session2.txt";

    $LastTime = time() - 86400; $base = "session2.txt";

    и обращайтесь уже к этому новому файлу...

    P.S. Или вам сейчас захочется одним-единственным файлом пользоваться?

  • AUser0, возможно я неправильно выразил смысл вопроса, Но я имею ввиду что добавляя два кода, с разным именем session и временем на одну страницу, два одинаковых echo будут показывать одно и тоже число! Нужно чтобы два echo отличались друг от друга и показывали разное значение, чтобы у каждого echo было уникальное имя для связи со своим кодом! Чтобы на странице показывало два значения, сколько посетителей в данный момент и сколько за 24 часа!
  • Thomek, первое я бы создавал файл суток динамически, исходя из даты, например date('dmY') это даёт уникальный файл для суток, записи или итератор можно писать в него. Можно так же и придумать очистку не нужных файлов. Тут проблема в другом. Как считать уникальных пользователей?
Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Елена Вебер Ответ

Для того чтобы показать количество посетителей на сайте с помощью двух различных кодов, можно воспользоваться двумя различными подходами: с использованием JavaScript и PHP.

1. С использованием JavaScript:
Для отслеживания количества посетителей на сайте с помощью JavaScript, можно воспользоваться сервисами сторонних компаний, такими как Google Analytics. Для этого необходимо зарегистрироваться в Google Analytics, получить код отслеживания и добавить его на все страницы вашего сайта. Google Analytics автоматически будет собирать данные о количестве посетителей, просмотрах страниц и других метриках.

Пример кода JavaScript для отображения количества посетителей на странице:

 
function getCount() {
  // Получаем количество посетителей с помощью Google Analytics API
  return google.analytics.visitors.count;
}
 
document.write("Количество посетителей на сайте: " + getCount());

function getCount() { // Получаем количество посетителей с помощью Google Analytics API return google.analytics.visitors.count; } document.write("Количество посетителей на сайте: " + getCount());

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

Пример кода PHP для отображения количества посетителей на странице:

 

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

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

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

Вам также может быть интересно