Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.08.2023, 02:05   #1
Thomek
Пользователь
 
Регистрация: 05.02.2022
Сообщений: 26
По умолчанию Как добавить два одинаковых скрипта в один файл?

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

Как сделать чтобы два таких кода <?php echo " <b>".sizeof(file($base))."</b>"; ?> на одной странице, показывали разное число, не смешиваясь, чтобы у них была уникальная подпись?! Я плохо разбираюсь в php.

Вот весь код
Код:
<?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 < sizeof($file); $i++) {
  $line = explode("|", $file[$i]);
   if ($line[1] > $LastTime) {
   $ResFile[$k] = $file[$i];
   $k++;
  }
 }

 for ($i = 0; $i<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<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);
 }
}
?>

<?php echo " <b>".sizeof(file($base))."</b>"; ?>
Thomek вне форума Ответить с цитированием
Старый 21.08.2023, 08:26   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Очевидно же, дать переменным разные имена и использовать их.
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
У нас есть файл goods.xml. Как добавить число от 1 до 3 перед тегом </>, если количество одинаковых тегов вместе <> </> больше одного в столбце? нам нужен выходной файл результата vitalyoleg Windows 2 30.04.2019 16:05
Записать несколько одинаковых типов в один файл Человек_Борща Общие вопросы Delphi 7 21.12.2010 22:39
Как правильно объединить несколько одинаковых стилей CSS в один файл? -=ButCheR=- HTML и CSS 1 30.10.2010 08:21
Помогите с настройкай скрипта mlm (буквально один файл) YurecLB Помощь студентам 3 02.02.2009 20:09
как в PhotoShop два файла скеить в один pdf файл? Допустим я нарисовал 2 страницы книги и мне их нужно объединить в один pdf N!ckeL Моделирование, изометрия, photoshop, 3d редакторы 2 15.05.2008 19:34