исправлено Сидбонусы

Nikolay90

Пользователь
#1
У меня была такая же проблема. Выскакивала ошибка на крон-задачу статистики. Далее, я рассуждал так:
я проверил ещё раз php-код и таблицы в базе на предмет запятых вместо точек в десятичных представлениях чисел сидбонусов. Оказалось, что у меня всё в порядке.
Все знают, что php очень вольно относится к преобразованиям типов переменных, и по собственному усмотрению может преобразовать один тип в другой.
Сидбонусы, которые у нас прописаны в админке, сериализуются (преобразуются в пригодное для хранения представление) в массив значений типа value, после чего отправляются в базу (переменная seed_bonus_points таблицы bb_config).
Как должно происходить обратное преобразование (десериализация)? Судя по мануалу (

Please Login or Register to view hidden text.

раздел "Возвращаемое значение"), обратное преобразование может быть к одному из пяти (!) типов. По здравой логике, php сам должен был бы преобразовать по умолчанию к типу float...
Далее, я исходил из того, что php мог вольно десериализовать к любому типу по своему усмотрению. К тому же, нельзя забывать, что у всех разные трекеры и разные числа сидбонусов... поэтому я решил воспользоваться явным преобразование к типу float.
В 177-ой строке крон-задачи статистики (файл library/includes/cron/jobs/tr_cleanup_and_dlstat.php) есть строка с десериализацией:
PHP:
$seed_bonus = unserialize($bb_cfg['seed_bonus_points']);
я её заменил на строку с явным преобразованием к типу float:
PHP:
$seed_bonus = (float) unserialize($bb_cfg['seed_bonus_points']);
После чего, ошибка крон-задачи Tracker cleanup and dlstat из логов полностью исчезла и сидбонусы заработали нормально.

P. S. Вся эта ситуация заставила меня вспомнить одну из простых истин:
"Хороший стиль программирования предполагает явное преобразование типов данных".

Предлагаю в следующий билд включить указанную выше поправку.
 

Бандерас

Пользователь
#4
А как убрать эти запятые на совсем? Обновил до новой ревизии по ссылке... Но при редактирование и на странице Обмена бонусов запятые остались... Всё перекопал, но запятые эти так и не увидел(((
 

Вложения

  • 9 KB Просмотры: 28
  • 12.1 KB Просмотры: 26
  • 11.1 KB Просмотры: 26
  • 15.5 KB Просмотры: 26

Inkognito

Пользователь
#5
А как убрать эти запятые на совсем? Обновил до новой ревизии по ссылке... Но при редактирование и на странице Обмена бонусов запятые остались... Всё перекопал, но запятые эти так и не увидел(((
а если не секрет МТ какая версия движка стоит???
 

Virtuoz

Пользователь
#8
отлично. а как обновили видеоурок случайно не сделали свой тоже хочу обновить
Тут 2 варианта, скачать чистый движок и перенести все моды или же открыть гит и ручками внести все правки
 

Inkognito

Пользователь
#10
Последнее редактирование:
Сверху