Dimasscus Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Всем привет. разбираюсь с проблемой- в истории заказов в личном кабинете вывести поле mpn товара получилось. но в списке заказов не удается. возможно кто то подскажет, как изменить запрос, $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'"); чтобы он подтягивал данные таблицы product? спасибо Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Добрый день. Можно вот так: $order_product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product op LEFT JOIN " . DB_PREFIX . "product p ON (op.product_id = p.product_id) WHERE op.order_id = '" . (int)$order_id . "'"); Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Если это в списке заказов, то для каждого заказа делаем такой запрос. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 7 минут назад, mpn2005 сказал: Если это в списке заказов, то для каждого заказа делаем такой запрос. спасибо что откликнулись. суть в чем- вот так я получаю данные из таблицы order model class ModelAccountOrder extends Model { public function getOrder($order_id) { $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'"); if ($order_query->num_rows) { $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['payment_country_id'] . "'"); if ($country_query->num_rows) { $payment_iso_code_2 = $country_query->row['iso_code_2']; $payment_iso_code_3 = $country_query->row['iso_code_3']; } else { $payment_iso_code_2 = ''; $payment_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['payment_zone_id'] . "'"); if ($zone_query->num_rows) { $payment_zone_code = $zone_query->row['code']; } else { $payment_zone_code = ''; } $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['shipping_country_id'] . "'"); if ($country_query->num_rows) { $shipping_iso_code_2 = $country_query->row['iso_code_2']; $shipping_iso_code_3 = $country_query->row['iso_code_3']; } else { $shipping_iso_code_2 = ''; $shipping_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['shipping_zone_id'] . "'"); if ($zone_query->num_rows) { $shipping_zone_code = $zone_query->row['code']; } else { $shipping_zone_code = ''; } return array( 'order_id' => $order_query->row['order_id'], 'invoice_no' => $order_query->row['invoice_no'], 'invoice_prefix' => $order_query->row['invoice_prefix'], 'store_id' => $order_query->row['store_id'], 'store_name' => $order_query->row['store_name'], 'store_url' => $order_query->row['store_url'], 'customer_id' => $order_query->row['customer_id'], 'firstname' => $order_query->row['firstname'], 'lastname' => $order_query->row['lastname'], 'telephone' => $order_query->row['telephone'], 'email' => $order_query->row['email'], 'payment_firstname' => $order_query->row['payment_firstname'], 'payment_lastname' => $order_query->row['payment_lastname'], 'payment_company' => $order_query->row['payment_company'], 'payment_address_1' => $order_query->row['payment_address_1'], 'payment_address_2' => $order_query->row['payment_address_2'], 'payment_postcode' => $order_query->row['payment_postcode'], 'payment_city' => $order_query->row['payment_city'], 'payment_zone_id' => $order_query->row['payment_zone_id'], 'payment_zone' => $order_query->row['payment_zone'], 'payment_custom_field' => $order_query->row['payment_custom_field'], 'payment_zone_code' => $payment_zone_code, 'payment_country_id' => $order_query->row['payment_country_id'], 'payment_country' => $order_query->row['payment_country'], 'payment_iso_code_2' => $payment_iso_code_2, 'payment_iso_code_3' => $payment_iso_code_3, 'payment_address_format' => $order_query->row['payment_address_format'], 'payment_method' => $order_query->row['payment_method'], 'shipping_firstname' => $order_query->row['shipping_firstname'], 'shipping_lastname' => $order_query->row['shipping_lastname'], 'shipping_company' => $order_query->row['shipping_company'], 'shipping_address_1' => $order_query->row['shipping_address_1'], 'shipping_address_2' => $order_query->row['shipping_address_2'], 'shipping_postcode' => $order_query->row['shipping_postcode'], 'shipping_city' => $order_query->row['shipping_city'], 'shipping_zone_id' => $order_query->row['shipping_zone_id'], 'shipping_zone' => $order_query->row['shipping_zone'], 'shipping_zone_code' => $shipping_zone_code, 'shipping_country_id' => $order_query->row['shipping_country_id'], 'shipping_country' => $order_query->row['shipping_country'], 'shipping_iso_code_2' => $shipping_iso_code_2, 'shipping_iso_code_3' => $shipping_iso_code_3, 'shipping_address_format' => $order_query->row['shipping_address_format'], 'shipping_method' => $order_query->row['shipping_method'], 'comment' => $order_query->row['comment'], 'total' => $order_query->row['total'], 'order_status_id' => $order_query->row['order_status_id'], 'language_id' => $order_query->row['language_id'], 'currency_id' => $order_query->row['currency_id'], 'currency_code' => $order_query->row['currency_code'], 'currency_value' => $order_query->row['currency_value'], 'date_modified' => $order_query->row['date_modified'], 'date_added' => $order_query->row['date_added'], 'ttn' => $order_query->row['ttn'], 'ttn_state' => $order_query->row['ttn_state'], 'ttnpay' => $order_query->row['ttnpay'], 'statedesk' => $order_query->row['statedesk'], 'shipttn' => $order_query->row['shipttn'], 'ip' => $order_query->row['ip'] ); } else { return false; } } в controler я выбираю нужные мне данные для вывода в шаблон foreach ($results as $result) { $product_total = $this->model_account_order->getTotalOrderProductsByOrderId($result['order_id']); $voucher_total = $this->model_account_order->getTotalOrderVouchersByOrderId($result['order_id']); //steelfeet Вызываем метод из модели $order_info = $this->model_account_order->getOrder($result['order_id']); $this->load->model('checkout/order'); $data['orders'][] = array( 'order_id' => $result['order_id'], 'ttn' => $result['ttn'], 'ttn_state' => ($result['ttn_state'] == '102' || $result['ttn_state'] == '103' ||$result['ttn_state'] == '108') ? $this->paymentform($result['ttn'], $result['shipttn'], $result['ttnpay']) : "-", 'earnings' => $this->model_checkout_order->getEarnings($result['order_id'], $result['ttn_state'], $result['total']), 'statedesk' => $result['statedesk'], 'shipttn' => $result['shipttn'], 'name' => $order_info['payment_firstname'] . ' ' . $order_info['payment_lastname'], 'telephone' => $order_info['telephone'], 'status' => $result['status'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'products' => ($product_total + $voucher_total), 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'view' => $this->url->link('account/order/info', 'order_id=' . $result['order_id'], true), ); } но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 4 минуты назад, Dimasscus сказал: но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. 9 минут назад, Dimasscus сказал: $this->load->model('checkout/order'); Вот это в цикле вообще лишнее. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 6 минут назад, mpn2005 сказал: Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. Вот это в цикле вообще лишнее. суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 5 минут назад, Dimasscus сказал: суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 1 минуту назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 1 минуту назад, Dimasscus сказал: да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Да проще не придумать в контроллере сделать так: $order_mpn = ''; $order_products = $this->model_account_order->getOrderProduct($result['order_id']); foreach ($order_products as $order_product) { if (!empty($order_product['mpn'])) { $order_mpn = $order_product['mpn']; break; } } 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Если это в списке заказов, то для каждого заказа делаем такой запрос. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 7 минут назад, mpn2005 сказал: Если это в списке заказов, то для каждого заказа делаем такой запрос. спасибо что откликнулись. суть в чем- вот так я получаю данные из таблицы order model class ModelAccountOrder extends Model { public function getOrder($order_id) { $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'"); if ($order_query->num_rows) { $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['payment_country_id'] . "'"); if ($country_query->num_rows) { $payment_iso_code_2 = $country_query->row['iso_code_2']; $payment_iso_code_3 = $country_query->row['iso_code_3']; } else { $payment_iso_code_2 = ''; $payment_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['payment_zone_id'] . "'"); if ($zone_query->num_rows) { $payment_zone_code = $zone_query->row['code']; } else { $payment_zone_code = ''; } $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['shipping_country_id'] . "'"); if ($country_query->num_rows) { $shipping_iso_code_2 = $country_query->row['iso_code_2']; $shipping_iso_code_3 = $country_query->row['iso_code_3']; } else { $shipping_iso_code_2 = ''; $shipping_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['shipping_zone_id'] . "'"); if ($zone_query->num_rows) { $shipping_zone_code = $zone_query->row['code']; } else { $shipping_zone_code = ''; } return array( 'order_id' => $order_query->row['order_id'], 'invoice_no' => $order_query->row['invoice_no'], 'invoice_prefix' => $order_query->row['invoice_prefix'], 'store_id' => $order_query->row['store_id'], 'store_name' => $order_query->row['store_name'], 'store_url' => $order_query->row['store_url'], 'customer_id' => $order_query->row['customer_id'], 'firstname' => $order_query->row['firstname'], 'lastname' => $order_query->row['lastname'], 'telephone' => $order_query->row['telephone'], 'email' => $order_query->row['email'], 'payment_firstname' => $order_query->row['payment_firstname'], 'payment_lastname' => $order_query->row['payment_lastname'], 'payment_company' => $order_query->row['payment_company'], 'payment_address_1' => $order_query->row['payment_address_1'], 'payment_address_2' => $order_query->row['payment_address_2'], 'payment_postcode' => $order_query->row['payment_postcode'], 'payment_city' => $order_query->row['payment_city'], 'payment_zone_id' => $order_query->row['payment_zone_id'], 'payment_zone' => $order_query->row['payment_zone'], 'payment_custom_field' => $order_query->row['payment_custom_field'], 'payment_zone_code' => $payment_zone_code, 'payment_country_id' => $order_query->row['payment_country_id'], 'payment_country' => $order_query->row['payment_country'], 'payment_iso_code_2' => $payment_iso_code_2, 'payment_iso_code_3' => $payment_iso_code_3, 'payment_address_format' => $order_query->row['payment_address_format'], 'payment_method' => $order_query->row['payment_method'], 'shipping_firstname' => $order_query->row['shipping_firstname'], 'shipping_lastname' => $order_query->row['shipping_lastname'], 'shipping_company' => $order_query->row['shipping_company'], 'shipping_address_1' => $order_query->row['shipping_address_1'], 'shipping_address_2' => $order_query->row['shipping_address_2'], 'shipping_postcode' => $order_query->row['shipping_postcode'], 'shipping_city' => $order_query->row['shipping_city'], 'shipping_zone_id' => $order_query->row['shipping_zone_id'], 'shipping_zone' => $order_query->row['shipping_zone'], 'shipping_zone_code' => $shipping_zone_code, 'shipping_country_id' => $order_query->row['shipping_country_id'], 'shipping_country' => $order_query->row['shipping_country'], 'shipping_iso_code_2' => $shipping_iso_code_2, 'shipping_iso_code_3' => $shipping_iso_code_3, 'shipping_address_format' => $order_query->row['shipping_address_format'], 'shipping_method' => $order_query->row['shipping_method'], 'comment' => $order_query->row['comment'], 'total' => $order_query->row['total'], 'order_status_id' => $order_query->row['order_status_id'], 'language_id' => $order_query->row['language_id'], 'currency_id' => $order_query->row['currency_id'], 'currency_code' => $order_query->row['currency_code'], 'currency_value' => $order_query->row['currency_value'], 'date_modified' => $order_query->row['date_modified'], 'date_added' => $order_query->row['date_added'], 'ttn' => $order_query->row['ttn'], 'ttn_state' => $order_query->row['ttn_state'], 'ttnpay' => $order_query->row['ttnpay'], 'statedesk' => $order_query->row['statedesk'], 'shipttn' => $order_query->row['shipttn'], 'ip' => $order_query->row['ip'] ); } else { return false; } } в controler я выбираю нужные мне данные для вывода в шаблон foreach ($results as $result) { $product_total = $this->model_account_order->getTotalOrderProductsByOrderId($result['order_id']); $voucher_total = $this->model_account_order->getTotalOrderVouchersByOrderId($result['order_id']); //steelfeet Вызываем метод из модели $order_info = $this->model_account_order->getOrder($result['order_id']); $this->load->model('checkout/order'); $data['orders'][] = array( 'order_id' => $result['order_id'], 'ttn' => $result['ttn'], 'ttn_state' => ($result['ttn_state'] == '102' || $result['ttn_state'] == '103' ||$result['ttn_state'] == '108') ? $this->paymentform($result['ttn'], $result['shipttn'], $result['ttnpay']) : "-", 'earnings' => $this->model_checkout_order->getEarnings($result['order_id'], $result['ttn_state'], $result['total']), 'statedesk' => $result['statedesk'], 'shipttn' => $result['shipttn'], 'name' => $order_info['payment_firstname'] . ' ' . $order_info['payment_lastname'], 'telephone' => $order_info['telephone'], 'status' => $result['status'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'products' => ($product_total + $voucher_total), 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'view' => $this->url->link('account/order/info', 'order_id=' . $result['order_id'], true), ); } но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 4 минуты назад, Dimasscus сказал: но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. 9 минут назад, Dimasscus сказал: $this->load->model('checkout/order'); Вот это в цикле вообще лишнее. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 6 минут назад, mpn2005 сказал: Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. Вот это в цикле вообще лишнее. суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 5 минут назад, Dimasscus сказал: суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 1 минуту назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 1 минуту назад, Dimasscus сказал: да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Да проще не придумать в контроллере сделать так: $order_mpn = ''; $order_products = $this->model_account_order->getOrderProduct($result['order_id']); foreach ($order_products as $order_product) { if (!empty($order_product['mpn'])) { $order_mpn = $order_product['mpn']; break; } } 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 7 минут назад, mpn2005 сказал: Если это в списке заказов, то для каждого заказа делаем такой запрос. спасибо что откликнулись. суть в чем- вот так я получаю данные из таблицы order model class ModelAccountOrder extends Model { public function getOrder($order_id) { $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'"); if ($order_query->num_rows) { $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['payment_country_id'] . "'"); if ($country_query->num_rows) { $payment_iso_code_2 = $country_query->row['iso_code_2']; $payment_iso_code_3 = $country_query->row['iso_code_3']; } else { $payment_iso_code_2 = ''; $payment_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['payment_zone_id'] . "'"); if ($zone_query->num_rows) { $payment_zone_code = $zone_query->row['code']; } else { $payment_zone_code = ''; } $country_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "country` WHERE country_id = '" . (int)$order_query->row['shipping_country_id'] . "'"); if ($country_query->num_rows) { $shipping_iso_code_2 = $country_query->row['iso_code_2']; $shipping_iso_code_3 = $country_query->row['iso_code_3']; } else { $shipping_iso_code_2 = ''; $shipping_iso_code_3 = ''; } $zone_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "zone` WHERE zone_id = '" . (int)$order_query->row['shipping_zone_id'] . "'"); if ($zone_query->num_rows) { $shipping_zone_code = $zone_query->row['code']; } else { $shipping_zone_code = ''; } return array( 'order_id' => $order_query->row['order_id'], 'invoice_no' => $order_query->row['invoice_no'], 'invoice_prefix' => $order_query->row['invoice_prefix'], 'store_id' => $order_query->row['store_id'], 'store_name' => $order_query->row['store_name'], 'store_url' => $order_query->row['store_url'], 'customer_id' => $order_query->row['customer_id'], 'firstname' => $order_query->row['firstname'], 'lastname' => $order_query->row['lastname'], 'telephone' => $order_query->row['telephone'], 'email' => $order_query->row['email'], 'payment_firstname' => $order_query->row['payment_firstname'], 'payment_lastname' => $order_query->row['payment_lastname'], 'payment_company' => $order_query->row['payment_company'], 'payment_address_1' => $order_query->row['payment_address_1'], 'payment_address_2' => $order_query->row['payment_address_2'], 'payment_postcode' => $order_query->row['payment_postcode'], 'payment_city' => $order_query->row['payment_city'], 'payment_zone_id' => $order_query->row['payment_zone_id'], 'payment_zone' => $order_query->row['payment_zone'], 'payment_custom_field' => $order_query->row['payment_custom_field'], 'payment_zone_code' => $payment_zone_code, 'payment_country_id' => $order_query->row['payment_country_id'], 'payment_country' => $order_query->row['payment_country'], 'payment_iso_code_2' => $payment_iso_code_2, 'payment_iso_code_3' => $payment_iso_code_3, 'payment_address_format' => $order_query->row['payment_address_format'], 'payment_method' => $order_query->row['payment_method'], 'shipping_firstname' => $order_query->row['shipping_firstname'], 'shipping_lastname' => $order_query->row['shipping_lastname'], 'shipping_company' => $order_query->row['shipping_company'], 'shipping_address_1' => $order_query->row['shipping_address_1'], 'shipping_address_2' => $order_query->row['shipping_address_2'], 'shipping_postcode' => $order_query->row['shipping_postcode'], 'shipping_city' => $order_query->row['shipping_city'], 'shipping_zone_id' => $order_query->row['shipping_zone_id'], 'shipping_zone' => $order_query->row['shipping_zone'], 'shipping_zone_code' => $shipping_zone_code, 'shipping_country_id' => $order_query->row['shipping_country_id'], 'shipping_country' => $order_query->row['shipping_country'], 'shipping_iso_code_2' => $shipping_iso_code_2, 'shipping_iso_code_3' => $shipping_iso_code_3, 'shipping_address_format' => $order_query->row['shipping_address_format'], 'shipping_method' => $order_query->row['shipping_method'], 'comment' => $order_query->row['comment'], 'total' => $order_query->row['total'], 'order_status_id' => $order_query->row['order_status_id'], 'language_id' => $order_query->row['language_id'], 'currency_id' => $order_query->row['currency_id'], 'currency_code' => $order_query->row['currency_code'], 'currency_value' => $order_query->row['currency_value'], 'date_modified' => $order_query->row['date_modified'], 'date_added' => $order_query->row['date_added'], 'ttn' => $order_query->row['ttn'], 'ttn_state' => $order_query->row['ttn_state'], 'ttnpay' => $order_query->row['ttnpay'], 'statedesk' => $order_query->row['statedesk'], 'shipttn' => $order_query->row['shipttn'], 'ip' => $order_query->row['ip'] ); } else { return false; } } в controler я выбираю нужные мне данные для вывода в шаблон foreach ($results as $result) { $product_total = $this->model_account_order->getTotalOrderProductsByOrderId($result['order_id']); $voucher_total = $this->model_account_order->getTotalOrderVouchersByOrderId($result['order_id']); //steelfeet Вызываем метод из модели $order_info = $this->model_account_order->getOrder($result['order_id']); $this->load->model('checkout/order'); $data['orders'][] = array( 'order_id' => $result['order_id'], 'ttn' => $result['ttn'], 'ttn_state' => ($result['ttn_state'] == '102' || $result['ttn_state'] == '103' ||$result['ttn_state'] == '108') ? $this->paymentform($result['ttn'], $result['shipttn'], $result['ttnpay']) : "-", 'earnings' => $this->model_checkout_order->getEarnings($result['order_id'], $result['ttn_state'], $result['total']), 'statedesk' => $result['statedesk'], 'shipttn' => $result['shipttn'], 'name' => $order_info['payment_firstname'] . ' ' . $order_info['payment_lastname'], 'telephone' => $order_info['telephone'], 'status' => $result['status'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'products' => ($product_total + $voucher_total), 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'view' => $this->url->link('account/order/info', 'order_id=' . $result['order_id'], true), ); } но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 4 минуты назад, Dimasscus сказал: но не могу придумать как мне к этим данным для каждого заказа передать данные, например из поля mpn подскажите пожалуйста Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. 9 минут назад, Dimasscus сказал: $this->load->model('checkout/order'); Вот это в цикле вообще лишнее. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 6 минут назад, mpn2005 сказал: Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. Вот это в цикле вообще лишнее. суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 5 минут назад, Dimasscus сказал: суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 1 минуту назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 1 минуту назад, Dimasscus сказал: да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Да проще не придумать в контроллере сделать так: $order_mpn = ''; $order_products = $this->model_account_order->getOrderProduct($result['order_id']); foreach ($order_products as $order_product) { if (!empty($order_product['mpn'])) { $order_mpn = $order_product['mpn']; break; } } 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 6 минут назад, mpn2005 сказал: Заказы - это заказы, а товары в заказе - это товары. В одном заказе может быть 10 товаров с разными полями. Это поле не логично прикреплять к заказу. Его надо прикреплять к товару. После строки: $order_info = $this->model_account_order->getOrder($result['order_id']); Получайте данные по товарам. Что-то вроде такого: $order_products = $this->model_account_order->getOrderProduct($result['order_id']); В модели у метода getOrderProduct надо будет добавить JOIN как писал выше. И в контроллере перебирайте и доставайте нужные поля. Только надо учитывать, что товара может уже и не быть. По хорошему нужные поля нужно тянуть в таблицу order_product. Вот это в цикле вообще лишнее. суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 5 минут назад, Dimasscus сказал: суть в том что товар в заказе всегда 1 :)) такова специфика. и товар всегда есть в наличии. поэтому и решил тащить из таблицы товара. спасибо. сейчас попробую Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 1 минуту назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 1 минуту назад, Dimasscus сказал: да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Да проще не придумать в контроллере сделать так: $order_mpn = ''; $order_products = $this->model_account_order->getOrderProduct($result['order_id']); foreach ($order_products as $order_product) { if (!empty($order_product['mpn'])) { $order_mpn = $order_product['mpn']; break; } } 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 1 минуту назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 1 минуту назад, Dimasscus сказал: да я б тоже. но на это поле уже завязано моб приложение, выгрузка в гугл таблицы и еще пара штуковин. так что легче сделать костыль чем перебрать все что там нахимичили Да проще не придумать в контроллере сделать так: $order_mpn = ''; $order_products = $this->model_account_order->getOrderProduct($result['order_id']); foreach ($order_products as $order_product) { if (!empty($order_product['mpn'])) { $order_mpn = $order_product['mpn']; break; } } 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000 × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 3 минуты назад, mpn2005 сказал: Так с этого и надо было начинать. Тогда что-то вроде этого: $order_query = $this->db->query("SELECT o.*, p.mpn FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "order_product` op ON (o.order_id = op.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) WHERE o.order_id = '" . (int)$order_id . "' AND o.customer_id = '" . (int)$this->customer->getId() . "' AND o.order_status_id > '0'"); Но я бы так всёравно не делал, а делал по человечески. Т.к. это получается костыль. не хочу надоедать но 1 вопрос- ибо он меня тоже мучает, но пока до него не добрался. у модуля симпле есть запрос на получение данных поля в нужном месте. вот такой $query = $this->db->query('SELECT * FROM `' . DB_PREFIX . $object . '_simple_fields` WHERE `'.$object.'_id` = \'' . $objectId . '\' LIMIT 1'); как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 Тут уже от задачи зависит. Добавит дополнительных запросов. Зато не будет приключений, если в заказе станет больше одного товара. Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення PRICE MASTER - Модуль імпорту/експорту товарів, парсинг, переклад, генерація текстів, редактор каталогу та багато іншого Автор: ScriptBrains 1.0 Синхронізація Замовлень Rozetka.ua та Opencart Автор: sinco Product Manipulator Автор: Hiperlynx007 Видалення дублікатів товарів для OpenCart Автор: Hatshypsut Вибір категорій і виробників для "Знайшли дешевше" шаблону Upstore Автор: Flint2000
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 6 минут назад, Dimasscus сказал: как его переиначить, чтобы он не выводил значение- а записывал в таблицу данные? ну то есть не select а insert использовать? А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 3.x Opencart 3.x: Налаштування та оптимізація сформировать запрос для получения значений из таблицы "product" в списке заказов в личном кабинете покуателя
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 15 минут назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. да по симпле-бог с ней. скорее всего я там переделаю чтоб юзалось поле из таблицы заказа а не из симплы. туда просто надо вписывать текстовые данные, время.зачем заюзано было это поле я сам не знаю:)) был в отпуске, по возвращении мне сообщили ,что уже создали в симпле поле, приципили к нему приложение, выгрузку- и осталось только мне теперь это реализовать заполнение этого поля (вывести в список заказов input и писать в базу). обновляться данные этого поле не будут- просто оно либо заполнено и содержит данные которые нельзя изменить,либо оно пустое. я прошу еще пару минут внимания- не получилось все ж с тем мпн. получаю Undefined index: mpn in / что сделал- в модели заменил запрос на тот что вы предложили, в запросах добавил 'mpn' => $order_query->row['mpn'], в контролере 'mpn' => $result['mpn'], в шаблон <td class="pts-text-left">{{ order.mpn }} </td> моды обновил. в чем проблема- не пойму Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 11 минут назад, Dimasscus сказал: 'mpn' => $result['mpn'], Тут ошибка. Надо так: 'mpn' => $order_info['mpn'], Там же из $result только номер заказ берётся. По умолчанию там не все поля из заказа модель возвращает. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options... mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 спасибо. все получилось. но натусил новую траблу создал в таблице order поле datereturnpay https://clip2net.com/s/47SZtOn в модели его позвал 'datereturnpay' => $order_query->row['datereturnpay'], в контролере указал 'datereturnpay' => $order_info['datereturnpay'], в твиге добавляю {{ order.datereturnpay }} - не выводится, но и ошибок нет прописал {{ dump(order.datereturnpay) }} получаю https://clip2net.com/s/47SZyDH просто руки опустились и я хз что делать. в чем проблема не пойму вообще Надіслати Поділитися на інших сайтах More sharing options...
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 'datereturnpay' => $result['datereturnpay'], поменял на result потому что все почти переменные там так подключаются и работают без ошибок- в итоге получаю Undefined index: datereturnpay in Надіслати Поділитися на інших сайтах More sharing options...
mpn2005 Опубліковано: 6 червня 2020 Share Опубліковано: 6 червня 2020 3 минуты назад, Dimasscus сказал: 'datereturnpay' => $result['datereturnpay'], Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. 1 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1
Dimasscus Опубліковано: 6 червня 2020 Автор Share Опубліковано: 6 червня 2020 46 минут назад, mpn2005 сказал: Так неправильно. Все данные в массиве $order_info. Сделайте в контроллере print_r($order_info) И проверте, что возвращает модель. действительно все именно так. надо будет разобраться на досуге зачем же там столько выводом с ресультом.:)) принт выводит и в коде все отлично видно. единственная проблема осталась- в списке заказов я сделал кнопки для вызова модальных окон в строке каждого заказа. по клику должно открываться окно с данными по конкретному выбранному заказу сейчас для обоих модальных окон выводит данные первого заказа в списке. надо подумать как заставить выводить в модальном окне данные которые соответствуют выбранному заказу. спасибо вам за помощь Надіслати Поділитися на інших сайтах More sharing options...
Dimasscus Опубліковано: 7 червня 2020 Автор Share Опубліковано: 7 червня 2020 17 часов назад, mpn2005 сказал: А зачем туда что-то вставлять? Симпла сама с этим справляется. Чтобы что-то туда вставить нужно чётко понимать, что у куда надо вставить. Выборка и вставка данных - это не одинаковые процессы. отказался от реализацией через поле в симпле. создал в ордере, все четко выводит. но возник вопрос- в функции public function getOrder($order_id) { есть запрос select который получает данные из нужных таблиц.. а как реализовать теперь запись из нужной переменной в таблицу? добавить запрос c insert для нужной таблицы ? Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts