[Помощь] Нужна помощь с импортом характеристик фильра в OpenCart

Тема в разделе "Интернет-магазины", создана пользователем stas-dok, 17 дек 2010.

Статус темы:
Закрыта.
  1. stas-dok

    stas-dok Писатель

    Регистр.:
    4 авг 2009
    Сообщения:
    7
    Симпатии:
    0
    В общем поставил я фильтр товаров http://forum.myopencart.ru/viewtopic.php?f=21&t=876&start=10 на OpenCart а также модуль импортаhttp://forum.myopencart.ru/viewtopic.php?f=21&t=545, всё с русского сайта, встал вопрос c ипортом характеристик фильтра из Exel файла, для этого на странице товаров в прайсе была создана колонка, в которую в таком виде записываются парметры:Объём жёсткого;250 Гб;Видео память;256 Мб;

    Далее я начал править модель импорта, для этого я добавил строчку
    PHP:
    $filter10 =  isset($row[36]) ? $row[36] : "";
    , которую разбиваю по знаку ;
    PHP:
    $filter explode(";"$filter10);
    , затем передаю в массив products
    PHP:
    $product[39] = $filter;
    Затем в функции добавления в базу принимаю и обрабатываю массив:
    PHP:
    $filter2=$product[39];
    foreach (
    $filter2 as $key => $value) { 
    $language_id =1;
                if (isset(
    $filter2[1])) {
                
    $this->db->query("INSERT INTO " DB_PREFIX "category_option SET type = '0', sort_order = '0'");
                
    $option_id $this->db->getLastId();
                
    $this->db->query("INSERT INTO " DB_PREFIX "category_option_description SET option_id = '" . (int)$option_id "', language_id = '" . (int)$language_id "' , name = '".$value."'");
               }
           if (isset(
    $filter2[1])) {
                foreach (
    $categories as $category_id) {
                    
    $this->db->query("INSERT INTO " DB_PREFIX "category_option_to_category SET option_id = '" . (int)$option_id "', category_id = '" . (int)$category_id "'");
            }
            }
            
            
    $filter_parametr=next($filter2);
             if (isset(
    $filter2[1])) {
            
    $this->db->query("INSERT INTO " DB_PREFIX "category_option_value SET option_id = '" . (int)$option_id "'");
            
    $value_id $this->db->getLastId();
            
    $this->db->query("INSERT INTO " DB_PREFIX "category_option_value_description SET value_id = '" . (int)$value_id "', option_id = '" . (int)$option_id "', language_id = '" . (int)$language_id "', name = '".$filter_parametr."'");
         }
             if (isset(
    $filter2[1])) {    
            
    $this->db->query("INSERT INTO " DB_PREFIX "product_to_value SET product_id = '" . (int)$productId "', value_id = '" . (int)$value_id "'");
            }
            
         }
    Однако он обрабатывается некоректно (это самая главная проблема)), кроме того, не хватает проверок на существование такого названия фильтра и такого значения фильтра в базе.
    Прилагаю скриншот того, что получается при импорте:[​IMG]
    Прилагаю файл export.php с моими правками(я там пробывал сделать проверки) и прайса
    Надеюсь на помощь или хотя бы подсказки, что делать)
     

    Вложения:

    • Archive.zip
      Размер файла:
      48,6 КБ
      Просмотров:
      12
Статус темы:
Закрыта.