COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Дмитрий2312

Соучастники
  • Публикации

    17
  • Зарегистрирован

  • Посещение

Дмитрий2312's Achievements

  1. Всё проблему решил. Если кому-нибудь надо вот рабочий код: function jsonRemoveUnicodeSequences($struct) { return preg_replace('~\\\\~', "", preg_replace("/\\\\u([a-f0-9]{4})/e", "iconv('UCS-4LE','UTF-8',pack('V', hexdec('U$1')))", json_encode($struct))); }
  2. Спасибо, я понял вашу позицию. И всё же вопрос для меня актуален. Понятно, что \u символы получаются после кодировки массива в json, при декодировке они обратно конвертируются в кириллицу. Нашёл следующий код, который преобразует \u символы в кириллицу: function jsonRemoveUnicodeSequences($struct) { return preg_replace("/\\\\u([a-f0-9]{4})/e", "iconv('UCS-4LE','UTF-8',pack('V', hexdec('U$1')))", json_encode($struct)); } однако там перед каждым символом добавляются обратные слэши кто подскажет где косяк?
  3. понятно почему, потому что кириллицей не передать а с местом лучше экономить и запросы быстрее в базе будут обрабатываться и т.д. и т.п. неужели никто не заморачивается с такими вещами?
  4. метод POST из представления контроллеру шлёт русский язык в таком формате: {"txt_symheight":"\u0412\u044b\u0441\u043e\u0442\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u0430, \u043c\u043c","inp_symheight":"60","txt_fieldswidth":"\u0428\u0438\u0440\u0438\u043d\u0430 \u043f\u043e\u043b\u0435\u0439, \u043c\u043c","inp_fieldswidth":"120","txt_material":"\u041c\u0430\u0442\u0435\u0440\u0438\u0430\u043b","sel_material":{"selected":"PET0.75","PET0.3":"\u041f\u042d\u0422 0.3 \u043c\u043c","PET0.5":"\u041f\u042d\u0422 0.5 \u043c\u043c","PET0.75":"\u041f\u042d\u0422 0.75 \u043c\u043c","PET1":"\u041f\u042d\u0422 1 \u043c\u043c"},"const_proportions":"12","const_count":"3","const_lenght":"4"} как конвертнуть его в такой вид: {"txt_symheight": "Высота символа, мм", "inp_symheight": 50, "txt_fieldswidth": "Ширина полей, мм", "inp_fieldswidth": 20, "txt_material": "Материал", "sel_material": { "selected": "PET0.3", "PET0.3": "ПЭТ 0.3 мм", "PET0.5": "ПЭТ 0.5 мм", "PET0.75": "ПЭТ 0.75 мм", "PET1": "ПЭТ 1 мм" } } не хочу в базе много места занимать, всё-равно всё в UTF-8
  5. OPENCART.CMS © 2009-2017 Все права защищены. Версия 2.1.0.1.10 может это хостер чего-то мудрит?
  6. Дополнения Turbo нет совсем, даже не устанавливал его. Сейчас опять заработали все запросы - ничего не менял. Мистика какая-то.
  7. Извиняюсь за тупость. Что это значит "из фронта"? А где включается Turbo?
  8. Дык чего там оптимизировать - в базе всего 7 тестовых записей. Просто вопрос: база барахлит или движок Opencart? Куда копать-то?
  9. Всем привет. Прошу помощи у знатоков. Насколько я знаю у opencart pro есть кэширование запросов в базу. Похоже я напоролся с этим кэшированием на геморрой. У меня то читаются и пишутся поля в базу, то перестают это делать, непонятно почему. $calcjson=json_encode($data['calcparams']); $this->db->query("UPDATE " . DB_PREFIX . "product SET calculator='" . $this->db->escape($data['selected-calculator']) . "' WHERE product_id = '" . (int)$product_id . "'");// это поле пишется и читается номрально $this->db->query("UPDATE " . DB_PREFIX . "product SET parametres='" . $this->db->escape($calcjson) . " WHERE product_id = '" . (int)$product_id . "'");// это поле сейчас не пишется и не читается, вчера и сегодня утром читалось без проблем Кто-нибудь сталкивался с такой проблемой?
  10. Товар не кривой. У меня одна опция в товаре - textarea. Расчёт стоимости Продукта идёт по своему алгоритму - т.н. калькулятор. В textarea пихаются технические данные - ширина, высота, материал и т.п. в виде json строки, далее я могу все эти параметры вытряхнуть и расшифровать, поэтому и белиберда такая. Везде, где фигурируют данные о купленных/выбранных товарах (cart, checkout, confirm и т.д.) я уже вклеил код и оно нормально там отображается, только проблемы с табами в админке, нашёл контроллер и представления, всё там поменял, но ничего в результате не изменилось, видимо там jquery рулит и обновляет данные на странице, буду ещё копать...
  11. Здравствуйте, уважаемые форумчане. Который час бьюсь - ничего не получается. Во вложении таб из админки. Не могу понять откуда тянутся данные о товаре. перелопатил файл контроллера "admin/controller/sale/order.php" нашёл все $option['value'] кучу раз подменял значения а информация выводится одна и та же также лопатил 'admin/view/template/sale/order_form.tpl' здесь ещё интересней во время загрузки идут данные из шаблона, а как только всё прогрузится страница обновляется и тянутся новые данные не пойму откуда. Помогите, пожалуйста. P.S. Задача состоит в том, чтобы белиберду из $option['value'] расшифровать и выдать в нормальном читаемом виде.
  12. Всем привет! Подскажите, пожалуйста, где рыть обработчик событий при нажатии на кнопку "обновить" рядом с количеством в корзине. Версия 2.1.0.1.10 буду признателен за помощь.
  13. Весело, 40 просмотров и ни одного ответа. Короче, пока ждал - сам написал. Тема закрыта.
  14. Opencart 2.0 1. в папке catalog/controller/calc будут создаваться файлы с именами: "calc0001.php", "calc0002.php" и т.п. внутри я сам реализую логику расчёта цен 2. в папке catalog/view/theme/default/template/calc будут создаваться файлы: "calc0001.tpl" и т.д. одноимённые с теми что в контроллере 3. в карточке товара в админке будет опция textarea "calculator", куда будет вписываться "calc0001", "calc0002" и т.д. задумка такая: как только движок видит textarea с именем calculator, то в карточку товара прилепляется .tpl из пункта 2. в этом шаблоне будут все необходимые поля для заполнения (инпуты, списки, радио и пр.), сам textarea тоже будет в карточке товара, только display:none. все изменения каких либо полей на карточке товара должны приводить в действие логику в файлах из пункта 1. и пересчитывать цену на товар и изменять текст внутри textarea"calculator" по следующим правилам: допустим у нас 2 поля ввода: "ширина":200 и "высота":200, в textarea записывается: "ширина:200; высота:200" после нажатия на кнопку "купить" считается окончательная стоимость и в корзину летит информация с рассчитанной ценой и значением textarea. Реализовать это нужно в виде .xml Сколько будет стоить работа и сроки.