Колориметрия, печать и препресс: технологии Главная Форум Галерея Контакты Download Статьи
Сражаясь неустанно,
доживём мы, Санчо,
до Золотого века!
 

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

Колориметрия и печать: технологии
 
Текущее время: 3:54, Вс, 08 дек 2019

Часовой пояс: UTC+03:00


Новые
ответы
в темах:



Начать новую тему  Ответить на тему  [ 2 сообщения ] 
Автор Сообщение
СообщениеДобавлено: 0:01, Сб, 12 ноя 2011 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 893
Откуда: Москва
Счетчик записывает параметры в обычный текстовый файл не используя баз данных. Поместите у себя на сервере пустой текстовый файл, назовите его, например, counter.txt. Файл должен быть разрешен на запись: выставите для него в FTP-клиенте атрибуты CHMOD 777.
В нужном документе поместите следующий код на PHP:
<?php
//counter
$COUNT_FILE = "counter.txt"; 
$message="";
$ip = getenv("REMOTE_ADDR")."::".getenv("HTTP_X_FORWARDED_FOR"); 
$datum=date("d.m.Y", time()-3*3600); 
$fp = fopen("$COUNT_FILE", "rb"); 
flock($fp,1); 
$contents=fread ($fp, filesize ($COUNT_FILE)); 
fclose ($fp); 
$content= explode("\n",$contents); 
$counts= explode("|",$content[0]); 
$counts[3]=chop($counts[3]); 
if ($counts[3]=="") {$counts[3]="1";} 
if (!in_array ($ip, $content)) { $content[] = $ip; $counts[1]++; } 
$counts[2]++; 
$counts[3]++; 
// полночь. ;) 
if ($counts[0]!=$datum) { 
$message="total hits:    ".$counts[3]."\ntoday hits:    ".$counts[2]."\ntoday uniques: ".$counts[1];
$r11=$counts[1];
$r21=$counts[2];
$counts[0]=$datum; $counts[1]=1; $counts[2]=1; 
} 
echo ("<div align=\"center\"><span class=\"counter\">Всего посещений - ".$counts[3]." | Всего за день - ".$counts[2]." | Уникальных за день - ".$counts[1]."</span></div>"); 
$content[0]=$counts[0]."|".$counts[1]."|".$counts[2]."|".$counts[3]; 
$fd = fopen("$COUNT_FILE", "a"); 
$locked = flock($fd,2); 
if ($locked) { 
$fp = fopen("$COUNT_FILE", "wb"); 
if ($message=="") { fwrite($fp, implode("\n",$content)); }
else  { fwrite($fp,$content[0]);  }
fclose($fp); 
} 
fclose($fd);
//end counter
?>
Если вы хотите другое оформление - замените в коде название стиля counter на что хотите. В строке echo просто показан необходимый синтаксис. Обращаю внимание, что файл с кодом должен иметь расширение .php и ваш хостинг-провайдер должен предоставлять вам услугу PHP. В целом это может быть целиком и полностью от начала до конца обычный html-файл: главное правильное расширение и приведенный кусок кода начинающийся с "<?php" и заканчивающийся "?>".

Счетчик обнуляет посещения и уникальные ip-адреса за день каждую полночь.

Теперь бонус: как разместить подобный счетчик на форуме phpBB2 внизу каждой страницы. Не сложно.
Ищем файл includes/page_tail.php, в нем находим строки:
//
// Show the overall footer.
//
и после них вписываем весь приведенный выше скрипт без первой и последней строки разумеется. В скрипте удаляем или ремим // строку echo (и далее все в скобках).
Далее в том же файле includes/page_tail.php находим строку
'ADMIN_LINK' => $admin_link)
и перед ней вписываем еще несколько элементов массива:
'COUNTER3' => $counts[3],
'COUNTER2' => $counts[2],
'COUNTER1' => $counts[1],
Открываем файл overall_footer.tpl и в нем там где вам нравится, например после строки
2001, 2005 phpBB Group
вписываем:
<br />Всего посещений - {COUNTER3} | Всего за день - {COUNTER2} | Уникальных за день - {COUNTER1}


Вернуться к началу
vote2019.appspot.com
СообщениеДобавлено: 17:40, Вт, 22 янв 2013 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 893
Откуда: Москва
Для форума phpbb3 будет актуально проделать тоже самое для размещения счетчика с другим файлом - functions.php. Найдите в нем строки:
  • /**
    * Generate page footer
    */
    function page_footer($run_cron = true)
    {
и впишите код скрипта из первого поста. Затем найдите пониже массив
  • $template->assign_vars(array(
и в любое место массива впишите как там через запятую
		//счетчик
		'COUNTER3' => $counts[3],
		'COUNTER2' => $counts[2],
		'COUNTER1' => $counts[1],
		//счетчик
Далее в файле overall_footer.html впишите в то место, которое вам нравится, например внутри блока <span class="copyright"> строчку:
Всего посещений - {COUNTER3} | Всего за день - {COUNTER2} | Уникальных за день - {COUNTER1}
Вобщем для phpBB3 почти все то же самое, что и для phpBB2, только файл нужного скрипта называется не page_tail.php а functions.php.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 2 сообщения ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

cron
© CIELab.XYZ
Создано на основе phpBB® Forum Software © phpBB Limited
Конференция запущена 18 августа 2004 года | Защищено от спама системой stopforumspam
Всего посещений - 5484370 | Всего за день - 93 | Уникальных сегодня - 21, вчера - 1358, позавчера - 3693