Вопросы, советы, возможные модификации и вообще все про модуль статистики кланов

Модератор: Exinaus, shw

#5780 FazanUa 13 июл 2012, 21:35
как можно сделать чтобы "Новые игроки в клане за прошлые сутки" изменить на "Новые игроки в клане за прошедшие 7 (14) дней", т.е. чтобы информация о новых и выбывших игроках содержала данные за неделю (или две).
#6095 Exinaus 26 июл 2012, 15:26
Ммм, можно более конкретно?
Для редактирования исходников, где и что находится? Глобальные переменные, их формат, какие данные содержат? Как редактировать стиль?
#6096 slackware 26 июл 2012, 15:31
Exinaus писал(а):Ммм, можно более конкретно?
Для редактирования исходников, где и что находится? Глобальные переменные, их формат, какие данные содержат? Как редактировать стиль?

Я хочу, например, вывести все тт 10 лвл (именно названия танков), которые есть у игрока.
Как пример смотрю файл tank10.php и не понимаю, как мне это сделать.
#6097 Exinaus 26 июл 2012, 16:15
Ага, т.е. понимание php у вас есть. Это хорошо. Буду исходить из этого.
Я вот кстати пересмотрел readme.txt, оттуда убраны примеры массива $res, который содержит в себе все данные с которыми оперирует модуль. Я прикрепил старый файл, там есть пример.
Если описывать, то в массиве $res содержатся все данные по всем игрокам. Т.е. выводя в пхп print_r($res['playerName']) вы получите данные о конкретном игроке. ну идя глубже по примеру, вы найдете все 10 танки игрока в $res['playerName']['tanks']['10'], там будет еще небольшое разбитие по классам, но я надеюсь вы разберетесь с ними, ну а получить все тяжелые танки 10 уровня можно например вот так:
Код: Выделить всё$a = array_keys($res['playerName']['tanks']['10']['heavyTanks']);
#6102 slackware 26 июл 2012, 19:54
Exinaus писал(а):
Код: Выделить всё$a = array_keys($res['playerName']['tanks']['10']['heavyTanks']);

Спасибо, информация в readme - то, чего как раз и не хватало.
немного доработал код:
Код: Выделить всё                    <td>
<?
//$b  - ник игрока
$b=$val['name'];
//$a - массив тт 10 уровня у игрока
$a = array_keys($res[$b]['tank']['10']['heavyTank']);
foreach ($a as $k => $v)
{
//$aa - количество боёв на машине
$aa=($res[$b]['tank']['10']['heavyTank'][$v]['total']);
//если количество боёв больше 0, значит машина была куплена
if ($aa>0)
{
echo "$v ($aa) <br />";
}
}
?>
                    </td>

Спасибо, сделал всё, что хотел ;)

Добавлено:
И ещё один вопрос:
В таблице tanks mysql нет ст 10 лвл и лт 8 лвл, из-за чего идут ошибки.
В админ панели бд сбрасывал, по крону обновлял.
Через какое время данные должны обновиться?
#6106 Exinaus 26 июл 2012, 22:59
Как только кто-то в клане проведет хоть один бой, при первом же обновлении модуля данные о этом танке добавятся.
Т.е. если в клане никто не провел ни одного боя, на скажем T110E3, то в базе модуля его не будет, пока хоть кто-то в клане на нем не сыграет.

И судя по коду, вы совсем немного поспешили. Вот скриншоты того, что должно попасть в следующее обновление:
http://img442.imageshack.us/img442/2323/top1hh.png
http://img196.imageshack.us/img196/6193/top2s.png
#6110 slackware 27 июл 2012, 07:56
Exinaus писал(а):Как только кто-то в клане проведет хоть один бой, при первом же обновлении модуля данные о этом танке добавятся.
Т.е. если в клане никто не провел ни одного боя, на скажем T110E3, то в базе модуля его не будет, пока хоть кто-то в клане на нем не сыграет.

Вот ссылка на скриншот: http://img33.imageshack.us/img33/1106/19068655.png
Дело в том, что в базе вообще нет ст 10 лвла. В клане уже катались на ст 10, я чистил всю базу и запускал обновление (cron.php).
Ту же ошибку он выводил у лт, когда я запрашивал вывод лт 9 лвла. Я поменял 9 на 8, и ошибка пропала, но в базе лт 8 тоже нет.

Поэтому я думаю, что есть какие-то проблемы с бд.
#6113 slackware 27 июл 2012, 09:46
Exinaus писал(а):Никаких проблем не заметил, если честно. Всегда так было что техника добавлялась не сразу.

Спасибо, всё заработало.
Остался последний вопрос:
http://img13.imageshack.us/img13/9371/85944939.png
Для 47 человек выводит нормально, для него - ошибка.
Код: Выделить всё                    <td>
<?
//lt
$b=$val['name'];
for ($i=5;$i<9;$i=$i+3)
{
//Строка 98 - ниже
$a = array_keys($res[$b]['tank'][$i]['lightTank']);
foreach ($a as $k => $v)
{
if ($v=="AMX 13 90" or $v=="Т-50-2")
{
$aa=($res[$b]['tank'][$i]['lightTank'][$v]['total']);
if ($aa>0)
{
echo "$v ($aa) <br />";
}
}
}
}
?>
                    </td>

В чём может быть проблема?

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

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

Реклама | Adv
cron