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

Статус
В этой теме нельзя размещать новые ответы.

stas-dok

Писатель
Регистрация
4 Авг 2009
Сообщения
7
Реакции
0
В общем поставил я фильтр товаров Для просмотра ссылки Войди или Зарегистрируйся на OpenCart а также модуль импортаДля просмотра ссылки Войди или Зарегистрируйся, всё с русского сайта, встал вопрос 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 . "'");
		}
		
	 }
Однако он обрабатывается некоректно (это самая главная проблема)), кроме того, не хватает проверок на существование такого названия фильтра и такого значения фильтра в базе.
Прилагаю скриншот того, что получается при импорте:
ffac513e1f54.jpg

Прилагаю файл export.php с моими правками(я там пробывал сделать проверки) и прайса
Надеюсь на помощь или хотя бы подсказки, что делать)
 

Вложения

  • Archive.zip
    48,6 KB · Просмотры: 12
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху