Jump to content
Sign in to follow this  
Focto

Изменение текста сообщения при заказе.

Recommended Posts

Нужно добавить вывод значения из company_id между Компания и Адрес (в таблицу Информация о покупателе)


и столбец значения 'upc' между столбцами количество и цена в таблице Товар?


 


Знаю что надо смотреть в /catalog/model/checkout/order.php и /catalog/view/theme/шаблон/template/checkout/checkout.tpl, пытался сделать по аналогии с Адресом и названием компании, но ничего не вышло. Помогите, пожалуйста!


post-684326-0-04819700-1407152648_thumb.jpg

Share this post


Link to post
Share on other sites

Разобрался с добавление company_id.

 

В файле /catalog/model/checkout/order.php, добавил '{company}'  и 'company_id' => $order_info['payment_company_id'] 

 

было

if ($order_info['payment_address_format']) {
				$format = $order_info['payment_address_format'];
			} else {
				$format = '{firstname} {lastname}' . "\n" . '{company}' . "\n" . '{address_1}' . "\n" . '{address_2}' . "\n" . '{city} {postcode}' . "\n" . '{zone}' . "\n" . '{country}';
			}
			
			$find = array(
				'{firstname}',
				'{lastname}',
				'{company}',
				'{address_1}',
				'{address_2}',
				'{city}',
				'{postcode}',
				'{zone}',
				'{zone_code}',
				'{country}'
			);
		
			$replace = array(
				'firstname' => $order_info['payment_firstname'],
				'lastname'  => $order_info['payment_lastname'],
				'company'   => $order_info['payment_company'],
				'address_1' => $order_info['payment_address_1'],
				'address_2' => $order_info['payment_address_2'],
				'city'      => $order_info['payment_city'],
				'postcode'  => $order_info['payment_postcode'],
				'zone'      => $order_info['payment_zone'],
				'zone_code' => $order_info['payment_zone_code'],
				'country'   => $order_info['payment_country']  
			); 

стало

 

if ($order_info['payment_address_format']) {
				$format = $order_info['payment_address_format'];
			} else {
				$format = '{firstname} {lastname}' . "\n" . '{company}' . "\n" . '{company_id}' . "\n" . '{address_1}' . "\n" . '{address_2}' . "\n" . '{city} {postcode}' . "\n" . '{zone}' . "\n" . '{country}';
			}
			
			$find = array(
				'{firstname}',
				'{lastname}',
				'{company}',
				'{company_id}',
				'{address_1}',
				'{address_2}',
				'{city}',
				'{postcode}',
				'{zone}',
				'{zone_code}',
				'{country}'
			);
		
			$replace = array(
				'firstname' => $order_info['payment_firstname'],
				'lastname'  => $order_info['payment_lastname'],
				'company'   => $order_info['payment_company'],
				'company_id'   => $order_info['payment_company_id'],
				'address_1' => $order_info['payment_address_1'],
				'address_2' => $order_info['payment_address_2'],
				'city'      => $order_info['payment_city'],
				'postcode'  => $order_info['payment_postcode'],
				'zone'      => $order_info['payment_zone'],
				'zone_code' => $order_info['payment_zone_code'],
				'country'   => $order_info['payment_country']  
			);

в том же файле только ниже, было 

$template->data['payment_address'] = str_replace(array("\r\n", "\r", "\n"), '<br />', preg_replace(array("/\s\s+/", "/\r\r+/", "/\n\n+/"), '<br />', trim(str_replace($find, $replace, $format))));						
									
			if ($order_info['shipping_address_format']) {
				$format = $order_info['shipping_address_format'];
			} else {
				$format = '{firstname} {lastname}' . "\n" . '{company}' . "\n" . '{address_1}' . "\n" . '{address_2}' . "\n" . '{city} {postcode}' . "\n" . '{zone}' . "\n" . '{country}';
			}
			
			$find = array(
				'{firstname}',
				'{lastname}',
				'{company}',
				'{address_1}',
				'{address_2}',
				'{city}',
				'{postcode}',
				'{zone}',
				'{zone_code}',
				'{country}'
			);
		
			$replace = array(
				'firstname' => $order_info['shipping_firstname'],
				'lastname'  => $order_info['shipping_lastname'],
				'company'   => $order_info['shipping_company'],
				'address_1' => $order_info['shipping_address_1'],
				'address_2' => $order_info['shipping_address_2'],
				'city'      => $order_info['shipping_city'],
				'postcode'  => $order_info['shipping_postcode'],
				'zone'      => $order_info['shipping_zone'],
				'zone_code' => $order_info['shipping_zone_code'],
				'country'   => $order_info['shipping_country']  
			);

стало

$template->data['payment_address'] = str_replace(array("\r\n", "\r", "\n"), '<br />', preg_replace(array("/\s\s+/", "/\r\r+/", "/\n\n+/"), '<br />', trim(str_replace($find, $replace, $format))));						
									
			if ($order_info['shipping_address_format']) {
				$format = $order_info['shipping_address_format'];
			} else {
				$format = '{firstname} {lastname}' . "\n" . '{company}' . "\n" . '{company_id}' . "\n" . '{address_1}' . "\n" . '{address_2}' . "\n" . '{city} {postcode}' . "\n" . '{zone}' . "\n" . '{country}';
			}
			
			$find = array(
				'{firstname}',
				'{lastname}',
				'{company}',
				'{company_id}',
				'{address_1}',
				'{address_2}',
				'{city}',
				'{postcode}',
				'{zone}',
				'{zone_code}',
				'{country}'
			);
		
			$replace = array(
				'firstname' => $order_info['shipping_firstname'],
				'lastname'  => $order_info['shipping_lastname'],
				'company'   => $order_info['shipping_company'],
				'company_id'   => $order_info['payment_company_id'],
				'address_1' => $order_info['shipping_address_1'],
				'address_2' => $order_info['shipping_address_2'],
				'city'      => $order_info['shipping_city'],
				'postcode'  => $order_info['shipping_postcode'],
				'zone'      => $order_info['shipping_zone'],
				'zone_code' => $order_info['shipping_zone_code'],
				'country'   => $order_info['shipping_country']  
			);

Share this post


Link to post
Share on other sites

Добавил в foreach ($data['products'] as $product) {

upc = '" . $this->db->escape($product['upc']) . "',  в файле /catalog/model/checkout/order.php

 

стало так:

foreach ($data['products'] as $product) { 
			$this->db->query("INSERT INTO " . DB_PREFIX . "order_product SET order_id = '" . (int)$order_id . "', product_id = '" . (int)$product['product_id'] . "', name = '" . $this->db->escape($product['name']) . "', model = '" . $this->db->escape($product['model']) . "', quantity = '" . (int)$product['quantity'] . "', upc = '" . $this->db->escape($product['upc']) . "', price = '" . (float)$product['price'] . "', total = '" . (float)$product['total'] . "', tax = '" . (float)$product['tax'] . "', reward = '" . (int)$product['reward'] . "'");

			$order_product_id = $this->db->getLastId();

при нажатии подтвердить выскакивает сообщение

 

Notice: Undefined index: upc in .../catalog/model/checkout/order.php on line 9Notice: Error: Unknown column 'upc' in 'field list'
Error No: 1054
INSERT INTO oc_order_product SET order_id = '36', product_id = '56', name = 'Товар', model = '023500000', quantity = '1', upc = '', price = '100', total = '100', tax = '0', reward = '0' in .../system/database/mysql.php on line 50

Share this post


Link to post
Share on other sites

Добавил в foreach ($data['products'] as $product) {

upc = '" . $this->db->escape($product['upc']) . "',  в файле /catalog/model/checkout/order.php

 

стало так:

foreach ($data['products'] as $product) { 
			$this->db->query("INSERT INTO " . DB_PREFIX . "order_product SET order_id = '" . (int)$order_id . "', product_id = '" . (int)$product['product_id'] . "', name = '" . $this->db->escape($product['name']) . "', model = '" . $this->db->escape($product['model']) . "', quantity = '" . (int)$product['quantity'] . "', upc = '" . $this->db->escape($product['upc']) . "', price = '" . (float)$product['price'] . "', total = '" . (float)$product['total'] . "', tax = '" . (float)$product['tax'] . "', reward = '" . (int)$product['reward'] . "'");

			$order_product_id = $this->db->getLastId();

при нажатии подтвердить выскакивает сообщение

 

Notice: Undefined index: upc in .../catalog/model/checkout/order.php on line 9Notice: Error: Unknown column 'upc' in 'field list'

Error No: 1054

INSERT INTO oc_order_product SET order_id = '36', product_id = '56', name = 'Товар', model = '023500000', quantity = '1', upc = '', price = '100', total = '100', tax = '0', reward = '0' in .../system/database/mysql.php on line 50

 

данная ошибка поялвяется потому что в в таблице oc_order_product нет столбца upc

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By legioner26
      Разработан многофункциональный Конструктор форм, вы можете легко за несколько минут в различных местах вашего магазина создать неограниченное количество форм для обратной связи, очень гибкая, простая и легкая установка.
       
      ПРЕИМУЩЕСТВА ДАННОГО МОДУЛЯ !!!
       
      ➥ Код модуля не зашифрован, разработчики смогут без каких либо проблем вносить свои изменения в проектах.
      ➥ Неограниченное количество созданий форм связи.
      ➥ Защита загрузки файлов
      ➥ Неограниченное создание полей текста, списков, файлов, текстовых областей, переключателей, флажков, дат, телефонов
      ➥ Изменение дизайна, картинки, иконок, полей прямо в админ панели модуля.
      ➥ Пожизненная лицензия на 1 домен.
      ➥ Украинская, Русская, Английская локализации.
       
      ПРИМЕЧАНИЕ !!!
      В случае, если форма не отправляет письма, необходимо проверить настройки магазина для отправки писем !!!
       
      Для прикрепления файлов.
      Для того чтобы иметь возможность прикреплять файлы форматов xls,xlsx,doc,docx необходимо:
      В настройках магазина во вкладке Сервер пункт Разрешенные типы файлов добавить
      docx
      doc
      xls
      xlsx
       
      В пункте Разрешенные типы файлов MIme добавить
      application/msword
      application/vnd.openxmlformats-officedocument.wordprocessingml.document
      application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
      application/vnd.ms-excel
       
      Модуль совместим с мессенджерами от разработчика @Bn174uk
       
      Установка:
      Установить через расширения архив Custom_designerform_oc3x-ocstore3x.ocmod.zip и обновить кешь.
    • By legioner26
      999.00 руб
      Скачать/Купить дополнение


      Конструктор форм обратной связи, опросов PRO
      Разработан многофункциональный Конструктор форм, вы можете легко за несколько минут в различных местах вашего магазина создать неограниченное количество форм для обратной связи, очень гибкая, простая и легкая установка.
       
      ПРЕИМУЩЕСТВА ДАННОГО МОДУЛЯ !!!
       
      ➥ Код модуля не зашифрован, разработчики смогут без каких либо проблем вносить свои изменения в проектах.
      ➥ Неограниченное количество созданий форм связи.
      ➥ Защита загрузки файлов
      ➥ Неограниченное создание полей текста, списков, файлов, текстовых областей, переключателей, флажков, дат, телефонов
      ➥ Изменение дизайна, картинки, иконок, полей прямо в админ панели модуля.
      ➥ Пожизненная лицензия на 1 домен.
      ➥ Украинская, Русская, Английская локализации.
       
      ПРИМЕЧАНИЕ !!!
      В случае, если форма не отправляет письма, необходимо проверить настройки магазина для отправки писем !!!
       
      Для прикрепления файлов.
      Для того чтобы иметь возможность прикреплять файлы форматов xls,xlsx,doc,docx необходимо:
      В настройках магазина во вкладке Сервер пункт Разрешенные типы файлов добавить
      docx
      doc
      xls
      xlsx
       
      В пункте Разрешенные типы файлов MIme добавить
      application/msword
      application/vnd.openxmlformats-officedocument.wordprocessingml.document
      application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
      application/vnd.ms-excel
       
      Модуль совместим с мессенджерами от разработчика @Bn174uk
       
      Установка:
      Установить через расширения архив Custom_designerform_oc3x-ocstore3x.ocmod.zip и обновить кешь.
      Добавил legioner26 Добавлено 26.06.2020 Категория Обратная связь, звонки Системные требования Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 3.0 ocStore 3.0 OpenCart.Pro, ocShop Обращение к серверу разработчика Нет Старая цена 1500  
    • By ERGERG
      Привет всем. Нужно сделать так чтобы в админке при оформлении заказа при вводе номера телефона происходило автозаполнение полей, а именно Имя, Фамилия, Адрес, всей информации как это происходит при выборе покупателя(зарегистрированного пользователя), брать эту информацию с уже существующего заказа, то-есть если заказ с таким номером телефона уже до этого был сделан, то происходит автозаполнение полей. Насколько я понимаю для этого мне понадобится добавить поиск по телефону, но это не проблема это я сделал, но дальше мои попытки реализации были не успешны, всё делал по примеру как с покупателем(зарег. пользователем), он подтягивает информацию с "customer/customer", а мне нужно подтягивать с "sale/order", это вообще реализовать возможно? Если есть любые идеи или возможности помочь, буду благодарен.
    • By Leingard
      Интерактивный модуль имитации заказов на сайте, который значительно повысит доверие Ваших клиентов к Вашему сайту!
       
      Модуль повышает доверие Ваших клиентов, путём имитации заказов на Вашем сайте. Клиенты видят, как в данный момент совершаются заказы на Вашем сайте реальных товаров, на которые они могут перейти и убедится в этом
       
      Посмотреть демо работы модуля OcStore 2.3 (установлено 8 секунд)
      Просмотреть демо работы модуля OcStore 2.1 (Установлено 6 секунд)
      Демо админ. панели (demo, demo) OcStore 2.3
       
      Версия для OpenCart 3
       
      Особенности:
      Быстрая скорость работы Использует актуальную информацию о Ваших товарах Возможность выбора категории из которой будут отображаться товары для имитации заказов (свой набор товаров) Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW) Возможность указать позицию отображения Возможность задать свой отступ отображения блока Удобная графическая настройка всех элементов модуля Поддержка практически любых нестандартных тем Повышает доверие к Вашему сайту с первых минут пребывания на нем  
      Приобретая модуль сейчас, в следующих дополнениях Вы бесплатно получите:
       
      3 вида анимации появления и исчезания 3 вида тем оформления (Классическая, Новогодняя, Современная)  
      Инструкция:
      Установите и настройте модуль по Вашим пожеланиям Выведите через схемы на любую страницу в любом расположении  
      Сложность установки и настройки: Лёгкая
       
      Обновление 1.5
      Добавлена возможность отображения общего количества покупок товара (Купили N раз) Добавлена возможность включения / выключения товаров со статусом "выключен" (FIX если у Вас отображались товары с ценой 0) Теперь вся анимация модуля воспроизводится на CSS5, вместо JS (анимация стала легче и быстрее) Исправлена неполадка при которой товары выводились из одной категории некорректно Исправлена неполадка с повторением анимации одинаковых товаров Добавлена проверка цены на все возможные скидки и акции Добавлены подсказки для некоторых пунктов настроек  
      Обновление 1.4
      Оптимизирована работа скриптов вывода Исправлена неполадка при вызове товара из выключенной категории Обновление 1.3
      Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW)  
      Обновление 1.2
      Добавлена возможность выбрать категорию из которой будут отображаться товары для имитации заказов (свой набор товаров) Добавлена возможность указать позицию отображения Добавлена возможность задать свой отступ отображения блока Дополнительная оптимизация Исправления совместимости с некоторыми популярными темами  
      Обновление 1.1
      OpenCart/OcStore 2.2 Opencart/OcStore 2.1  
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть
    • By Leingard
      450.00 руб
      Скачать/Купить дополнение


      FakeOrders 1.5.1 PRO - имитация заказов на сайте
      Интерактивный модуль имитации заказов на сайте, который значительно повысит доверие Ваших клиентов к Вашему сайту!
       
      Модуль повышает доверие Ваших клиентов, путём имитации заказов на Вашем сайте. Клиенты видят, как в данный момент совершаются заказы на Вашем сайте реальных товаров, на которые они могут перейти и убедится в этом
       
      Посмотреть демо работы модуля OcStore 2.3 (установлено 8 секунд)
      Просмотреть демо работы модуля OcStore 2.1 (Установлено 6 секунд)
      Демо админ. панели (demo, demo) OcStore 2.3
       
      Версия для OpenCart 3
       
      Особенности:
      Быстрая скорость работы Использует актуальную информацию о Ваших товарах Возможность выбора категории из которой будут отображаться товары для имитации заказов (свой набор товаров) Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW) Возможность указать позицию отображения Возможность задать свой отступ отображения блока Удобная графическая настройка всех элементов модуля Поддержка практически любых нестандартных тем Повышает доверие к Вашему сайту с первых минут пребывания на нем  
      Приобретая модуль сейчас, в следующих дополнениях Вы бесплатно получите:
       
      3 вида анимации появления и исчезания 3 вида тем оформления (Классическая, Новогодняя, Современная)  
      Инструкция:
      Установите и настройте модуль по Вашим пожеланиям Выведите через схемы на любую страницу в любом расположении  
      Сложность установки и настройки: Лёгкая
       
      Обновление 1.5
      Добавлена возможность отображения общего количества покупок товара (Купили N раз) Добавлена возможность включения / выключения товаров со статусом "выключен" (FIX если у Вас отображались товары с ценой 0) Теперь вся анимация модуля воспроизводится на CSS5, вместо JS (анимация стала легче и быстрее) Исправлена неполадка при которой товары выводились из одной категории некорректно Исправлена неполадка с повторением анимации одинаковых товаров Добавлена проверка цены на все возможные скидки и акции Добавлены подсказки для некоторых пунктов настроек  
      Обновление 1.4
      Оптимизирована работа скриптов вывода Исправлена неполадка при вызове товара из выключенной категории Обновление 1.3
      Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW)  
      Обновление 1.2
      Добавлена возможность выбрать категорию из которой будут отображаться товары для имитации заказов (свой набор товаров) Добавлена возможность указать позицию отображения Добавлена возможность задать свой отступ отображения блока Дополнительная оптимизация Исправления совместимости с некоторыми популярными темами  
      Обновление 1.1
      OpenCart/OcStore 2.2 Opencart/OcStore 2.1  
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть Добавил Leingard Добавлено 20.12.2017 Категория Покупки, оформление заказа, корзина Системные требования bootstrap Метод активации По запросу в ЛС Ioncube Loader Нет OpenCart 2.3
      2.1 ocStore 2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1 Обращение к серверу разработчика Нет Старая цена 500  
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

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