IPB 2.3.6: Creating default object from empty value

Bright777

Новичок
Creating default object from empty value ... on line 87
Такими сообщениями в последние несколько недель лог ошибок хостинга наполняется в среднем на 10+ Мб. Скорей всего связано с переходом на более современную версию PHP хоста.
КОД в файле Line87

Если кто сможет, объясните, пожалуйста, решение так, чтобы понял полный ноль в PHP.
 

fixxxer

К.О.
Партнер клуба
Видишь русские комментарии? Очевидно, что это не ipb, а какой-то говномодуль.

Ничего страшного в этом сообщении нет, не обращай внимания.
 

Bright777

Новичок
Да, это самописный модуль, но он один из важнейших на форуме, поэтому хотелось бы от этой ошибки избавиться.
К тому же после миграции Joomla с 2.5 на 3.6 нужно выполнять много работ по сайту и для этого нужен лог ошибок. А лог Джумлы и форума единый и в десяти мегабайтах такого шлака не мудрено пропустить что-то важное.
 

AmdY

Пью пиво
Команда форума
Думаю проще будет отключить E_STRICT и разные E_DEPRICATED пока не переедете.
А для исправления нужно инициализировать RefSys, например, как stdObject.
 

Bright777

Новичок
@AmdY, после переезда тонны шлака тоже не сильно нужны. Одно дело когда в чистом логе что-то появляется - сразу заметно, но совсем другое, когда колебания размера логов в мегабайты... Было б одно-два сообщения, не парился бы и людей не парил бы.

Про "инициализировать RefSys, например, как stdObject" можно подробней?
 

fixxxer

К.О.
Партнер клуба
$this->RefSys = new stdClass();

строчкой выше

А код этот лучше никому не показывать, там явные sql injections. Конечно, может, там снаружи такие входные данные, что эксплуатировать не получится, но за такой код надо бить по рукам.

477-я строчка - вообще эталонный индусский код из палаты мер и весов :)
 
Последнее редактирование:

Bright777

Новичок
Добавил, завтра покажет, а может и сегодня.

Интересно, что я уже и в роботсе запретил индексацию, и в .хтачесе запретил доступ, а лог всё равно наполняется и наполняется.
И Яша, и Гугл при проверке доступа к папке сообщают, что доступа нет, но лог почти весь состоит из их обращений.
Как так?
 

Bright777

Новичок
После добавления $this->RefSys = new stdClass() над 78-й строчкой вроде бы успокоилось. По крайней мере полтора часа нет этого сообщения.
Зато появились другие (по порядку появления):
Illegal string offset 'value' in ssys.php on line 1388
Illegal string offset 'value' in /pssys/tmp/%%0E^0E9^0E9F0E6A%%rules.tpl.php on line 70

1388 - это в выложенном коде получается 1387
а line 70 - это первая в отрывке:
PHP:
            <?php if ($this->_tpl_vars['rules'][$this->_sections['i']['index']]['acts']['value'] == "*"): ?>
                Всем
            <?php elseif ($this->_tpl_vars['rules'][$this->_sections['i']['index']]['acts']['type'] == 'g'): ?>
                Группе <?php echo $this->_tpl_vars['rules'][$this->_sections['i']['index']]['acts']['value']; ?>

            <?php elseif ($this->_tpl_vars['rules'][$this->_sections['i']['index']]['acts']['type'] == 'm'): ?>
                Пользователю <?php echo $this->_tpl_vars['rules'][$this->_sections['i']['index']]['acts']['value']; ?>

            <?php endif; ?>
@fixxxer, БОЛЬШУЩЕЕ СПАСИБО!
Даже если останется как сейчас - УЖЕ ЭТО для меня огромный воз с плеч.
 

Bright777

Новичок
"Всё хорошо, прекрасная маркиза..." (C) Количество ошибок почти месяц стабильно держится до 6 Кб (раньше бывало до 12 Мб).
Но при этом резко выросло время отправки сообщений - до 15-20 секунд (иногда и минуту висит!).
Если в это время остановить отправку сообщения и обновить страницу, то окажется, что сообщение уже опубликовано, только в нём не начислен бонус за сообщение. Есть функция пересчета бонуса из уже опубликованного поста - она срабатывает мгновенно (не висит десятки секунд).
Обидно, форум хоть и старенький, но вцелом работает неплохо, как для меня, так можно даже сказать очень хорошо, а эти тормоза с постами как серпом... Может можно что-то сделать?

Прямо здесь спрашиваю потому, что исправление делалось как раз в файле "платежной системы", производящей начисление бонусов за посты.
 
Последнее редактирование:

Bright777

Новичок
Может хоть за деньги кто возьмется?
Черканите в личку сколько будет стоить убрать тормоз отправки сообщения
и сколько вообще привести форум в порядок (не до идеала, конечно).
Форум.
 
Сверху