Ошибка в админке

Тема в разделе "OpenCart", создана пользователем Fassendek, 24 янв 2018.

  1. Fassendek

    Fassendek

    Регистрация:
    13 фев 2013
    Сообщения:
    6
    Симпатии:
    5
    При входе в админпанель разворачивается полотно ошибок вида:
    Warning: A non-numeric value encountered in ../shop/admin/model/localisation/currency.php on line 141Warning: Division by zero in ../shop/admin/model/localisation/currency.php on line 141Warning: A non-numeric value encountered in
    Строка в файле такая:
    $value = (1 / utf8_substr($line[$i + 1], 11, 6));
    Как я понял из ошибки, то происходит деление на 0. В каком случае появляется данная ошибка и как её исправить?! Спасибо!!!
     
  2. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Эта (и ещё куча других) оишбка появляется в случае, когда используется версия ОК не предназначенная для использования :Smile: В вашем случае это 3.0.
    Просто закомментируйте эту строку.
     
  3. Vlad-i-Slav

    Vlad-i-Slav

    Регистрация:
    20 мар 2013
    Сообщения:
    286
    Симпатии:
    176
    $value = (1 / floatval(utf8_substr($line[$i + 1], 11, 6)));
     
  4. Fassendek

    Fassendek

    Регистрация:
    13 фев 2013
    Сообщения:
    6
    Симпатии:
    5
    Честно сказать я качал сборку и никакой отсебятины не добавлял. Получается, что сборка не предназначена для использования! :Wink:
    Фокус не проходит целиком, но уполовинивает количество ошибок, хотя все они одинаковые.:ScratchOneSHead:
     
  5. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Не сборка, а вся версия 3.0! То же самое было с 2.0, люди до сих пор едят этот кактус. Там вообще местами тупо не хватало кусков кода.

    Не одинаковые! Там же две разные ошибки. floatval избавляет от "non-numeric value", но деление на 0, вероятно, остаётся.

    Решение я уже написал выше - просто закомментируйте эту строку целиком.
     
    Master2KAZ нравится это.
  6. Vlad-i-Slav

    Vlad-i-Slav

    Регистрация:
    20 мар 2013
    Сообщения:
    286
    Симпатии:
    176
    $value = floatval(utf8_substr($line[$i + 1], 11, 6)) >0 ? (1 / floatval(utf8_substr($line[$i + 1], 11, 6))) : 0;