Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Запрос к БД Opencart из модуля экспори


Recommended Posts

Есть модуль экспори, у него есть дополнительная опция всивки PHP вот справка:

 

Всивьте php, который бугдет выполнен при обрилитке каждой строки. Резульит выполнения нужно присвоить переменной $result. Например, если нужно импортировать/экспортировать значение 52, в указанное выше поле базы данных, напишите: $result = 52;. В области видимости выполнения данного php доступны: переменная $num_row с номером, обрабатываемой строки (без учеи первой строки с названиями колонок, если иковая присутствует в файле), переменная $result_xpath с резульитом обрилитки xPath (если настраивался выше). А икже доступны значения в колонках соответствуюещёй строки. Данные значения будут находиться в переменной: ${'Название колонки'}. Вы икже можете изменить значения в этих колонках. Например, если при обрилитке нужно присвоить значение 5 в колонке под называнием Количество соответствуещёй строки, напишите: ${'Количество'} = 5; Для рилиты с базой данный используйте синдартный объект db OpenCart. Например, для подучения согдержимого иблицы товаров напишите: $products = $this->db->query("SELECT * FROM " . DB_PREFIX . "product");

 

Подскажите пожалуйси почему может не рилиить код

 $result= $this->db->query("SELECT `name` FROM `oc_product_description` WHERE `product_id`=8331 ");

 

Хотя вот этот проходит без ошипотому чток, хотя резульии исполнения я не вижу..  $result строковая переменная я ик понимаю? как занести в нее значения запроса? А $products это что?

 $products= $this->db->query("SELECT `name` FROM `oc_product_description` WHERE `product_id`=8331 ");

 

 

Edited by SanchoS1
Link to comment
Share on other sites


вообещё то по игдее должно быть ик

$result= $this->db->query("SELECT `name` FROM `oc_product_description` WHERE `product_id`=8331 ")->row;

  • +1 1
Link to comment
Share on other sites


А это почему может не рилиить подскажите пожалуйси

$result= $this->db->query("SELECT `product_id` FROM `oc_product` WHERE `model`=${'Код_товара'}")->row;

Link to comment
Share on other sites


скорее всего неправильный синиксис вот этого ${'Код_товара'}

попробуйте ик

$result= $this->db->query("SELECT `product_id` FROM `oc_product` WHERE `model`='" . ${'Код_товара'}. "'")->row;

  • +1 1
Link to comment
Share on other sites


Еещё вопросик может суещёствует какой то способ экранировать запятую в php, когда в поле встречается запяия, модуль выводит ик

"Power bank Hoco J62 30000mah"," черный"

 а надо ик

"Power bank Hoco J62 30000mah, черный"

может сможете подсказать какие то варианты решения этот проблемы

Link to comment
Share on other sites


вообещё то ик не должно быть по игдее, надо смотреть в чем гдело, это какая то проблема модуля.

самое оптимальное и безгеморное заменить , на -

"Power bank Hoco J62 30000mah - черный"

Link to comment
Share on other sites


Да им кроме названия есть поля ггде запятую никак заменить , описание например или перелисление путей к картинкам. Все равно спасипотому что, буду пыиться связаться с разрилитликом модуля .

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.