X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Помощь по Dle Forum
silva
silva
Topic Starter сообщение 26.4.2010, 22:17; Ответить: silva
Сообщение #1


Участник
***

Группа: User
Сообщений: 229
Регистрация: 15.9.2008
Поблагодарили: 34 раза
Репутация:   7  


Здравствуйте!
Как известно, в DLE Forum 2.5 была улучшена статистика форума (по сравнению с предыдущими версиями). Но чтоб уменшить нагрузку она кэшируется, а кэш обновляется раз в сутки.

На их официальном сайте написано как отключить кэш:

/engine/forum/sources/modules/stats.php

$stats_array = $fcache->get('stats');

Замените на:
$stats_array = '';

+4 MySQL запроса на главной форума.

Вопрос: Как сделать чтоб статистика кэшировалась, но кэш обновлялся например каждый час?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Electric
Electric
сообщение 27.4.2010, 1:21; Ответить: Electric
Сообщение #2


CMS help/antivirus
******

Группа: Active User
Сообщений: 1532
Регистрация: 27.12.2009
Из: Єдина Україна
Поблагодарили: 389 раз
Репутация:   57  


Выложите исходник этого файла: /engine/forum/sources/modules/stats.php


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
silva
silva
Topic Starter сообщение 27.4.2010, 9:10; Ответить: silva
Сообщение #3


Участник
***

Группа: User
Сообщений: 229
Регистрация: 15.9.2008
Поблагодарили: 34 раза
Репутация:   7  


Вот

<?php
/*
=====================================================
DLE Forum - by DLE Files Group
-----------------------------------------------------
http://dle-files.ru/
-----------------------------------------------------
File: stats.php
-----------------------------------------------------
md5: 998c814c76c5e0ed84a48cde6ca8380d
=====================================================
Copyright © 2008,2010 DLE Files Group
=====================================================
*/

if(!defined('DATALIFEENGINE'))
{
die("Hacking attempt!");
}
$act = $_REQUEST['act'];

if ($forum_config['stats'] AND !$act)
{
$stats_array = array();

$today_date = date('d');;

$stats_array = $fcache->get('stats');

if (!$stats_array OR $stats_array['date'] != $today_date)
{
$stats_array = FALSE;

$stats_array = array();

$row_post = $db->super_query("SELECT COUNT(pid) as count FROM " . PREFIX . "_forum_posts");

$stats_array['posts'] = $row_post['count'];

$row_topic = $db->super_query("SELECT COUNT(tid) as count FROM " . PREFIX . "_forum_topics");

$stats_array['topics'] = $row_topic['count'];

$row_users_reg = $db->super_query("SELECT COUNT(user_id) as count FROM " . PREFIX . "_users");

$stats_array['users_reg'] = $row_users_reg['count'];

$row_users = $db->super_query("SELECT COUNT(user_id) as count FROM " . PREFIX . "_users WHERE forum_post");

$stats_array['users'] = $row_users['count'];

$result_users = $db->query("SELECT * FROM " . PREFIX . "_users WHERE forum_post ORDER BY forum_post DESC LIMIT 10");

while ($row = $db->get_row($result_users))
{
$top_count++;

if ($top_count > 1)
{
$symbol = ", ";
}

$group_span = $forum_groups[$row['user_group']]['group_colour'];

if ($forum_config['mod_rewrite'])
{
$a_top_users = "{$config['http_home_url']}user/".urlencode($row['name'])."/";
} else
{
$a_top_users = "{$config['http_home_url']}?subaction=userinfo&user=".urlencode($row['name'])."";
}
$stats_array['top_users'] .= $symbol."<a href=\"{$a_top_users}\"><span style=\"color:{$group_span}\">$row[name]</span></a>";
}

if (!$stats_array['top_users'])
{
$stats_array['top_users'] = "--";
}

$stats_array['date'] = $today_date;

$last_user_row = $db->super_query("SELECT * FROM " . PREFIX . "_users ORDER BY user_id DESC LIMIT 1");

$stats_array['last_user'] = link_user($last_user_row['name']);

$stats_array['max_online'] = $max_online['count'];
$stats_array['max_online_time'] = langdate('j F Y, H:i', $max_online['time']);

$fcache->set('stats', $stats_array);
}

// tpl compile //
$tpl->load_template($tpl_dir.'stats.tpl');

if ($forum_config['online'] and $forum_config['sessions_log'])
{
get_forum_online();

$tpl->set('[online-stats]','');
$tpl->set('[/online-stats]','');
}
else
{
$tpl->set_block("'\\[online-stats\\](.*?)\\[/online-stats\\]'si","");
}

$tpl->set('{post-num}', $stats_array['posts']);
$tpl->set('{topic-num}', $stats_array['topics']);
$tpl->set('{all-users}', $stats_array['users_reg']);
$tpl->set('{forum-users}', $stats_array['users']);
$tpl->set('{top-users}', $stats_array['top_users']);

$tpl->set('{online-num}', $forum_online['all_count']);
$tpl->set('{member_count}', $forum_online['member_count']);
$tpl->set('{guest_count}', $forum_online['guest_count']);
$tpl->set('{online_time}', $forum_config['session_time']);

if (!$forum_online['member_list'])
{
$forum_online['member_list'] = ""; // default value: --
}

$tpl->set('{member_online}', $forum_online['member_list']);

$tpl->set('{last_user}', $stats_array['last_user']);
$tpl->set('{max_online}', $stats_array['max_online']);
$tpl->set('{max_online_time}', $stats_array['max_online_time']);

$tpl->compile('forum_stats');
$tpl->clear();
}
?>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MeTaTRoN
MeTaTRoN
сообщение 27.4.2010, 12:49; Ответить: MeTaTRoN
Сообщение #4


Завсегдатай
*****

Группа: Active User
Сообщений: 511
Регистрация: 1.9.2008
Из: Таллинн Эстония
Поблагодарили: 63 раза
Репутация:   18  


а ты покупал или ты используешь null?


--------------------
Программист: PHP, JavaScript, HTML5, HTML5 canvas, CSS, AJAX, jquery, SQL.
Реклама на аниме сайте
Услуги программиста, тема на форуме
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Electric
Electric
сообщение 27.4.2010, 19:35; Ответить: Electric
Сообщение #5


CMS help/antivirus
******

Группа: Active User
Сообщений: 1532
Регистрация: 27.12.2009
Из: Єдина Україна
Поблагодарили: 389 раз
Репутация:   57  


Сделайтей бекап этого файла потом замените строчку:
$today_date = date('d');

на такую:
$today_date = date('H');

Не уверен на все 100%, но должно по идее работать. wink.gif


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
silva
silva
Topic Starter сообщение 27.4.2010, 23:05; Ответить: silva
Сообщение #6


Участник
***

Группа: User
Сообщений: 229
Регистрация: 15.9.2008
Поблагодарили: 34 раза
Репутация:   7  


а ты покупал или ты используешь null?

покупал, но их саппорт просто убивает...

Сделайтей бекап этого файла потом замените строчку:
Код
$today_date = date('d');
на такую:
Код
$today_date = date('H');
Не уверен на все 100%, но должно по идее работать.

спасибо, щас попробую


вроде все нормально работает, но почему то число гостей после этих изменений выросло во много раз... такое ощущения что счетчик гостей только добавляет сесии, и не сбрасывает их.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Electric
Electric
сообщение 28.4.2010, 15:33; Ответить: Electric
Сообщение #7


CMS help/antivirus
******

Группа: Active User
Сообщений: 1532
Регистрация: 27.12.2009
Из: Єдина Україна
Поблагодарили: 389 раз
Репутация:   57  


Хорошо что работает. Возможно, нужно ковырять глубже в чем там прикол. rolleyes.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Регистрация Вашего сайта (профиля,DLE сайты,подписи на форумах,постинг Тиц 10> , ПР 1>)
278 kaartes 102694 Вчера, 10:55
автор: kukla
Открытая тема (нет новых ответов) Адаптивная вёрстка и натяжка на Wordpress, DLE, Joomla и др. Создание мобильных версий.
Хороший код с оптимизацией по скорости. Сайты и лендинги "под ключ
15 Nell 1145 13.12.2017, 23:36
автор: Nell
Открытая тема (нет новых ответов) Нужна помощь в активации аккаунта AdSense
9 dimaguru 2412 13.12.2017, 16:53
автор: vds4you
Горячая тема (нет новых ответов) Услуги по CMS Wordpress, DLE, Joomla!. Правки, ремонт, настройка.
Редактирование и правки. Низкие цены.
142 contex1 65123 5.12.2017, 12:13
автор: contex1
Открытая тема (нет новых ответов) Требуется так сказать оптимизация шаблона DLE
5 Deadman_n 413 2.12.2017, 13:24
автор: Deadman_n


 



RSS Текстовая версия Сейчас: 15.12.2017, 9:10
Дизайн