Перейти к содержанию
grechanyuk

[Решено] Проблема с запросом к MySQL

Рекомендуемые сообщения

Всем привет! Надеюсь мне сможет кто-нибудь помочь :)

имеется OpenCart 2.3.0.2, после небольших переделок "кредита магазина" из него перестала вычитаться стоимость доставки. 

Ну не беда, подумал я... добавил в код несколько строк:

class ModelExtensionTotalSubTotal extends Model {


				public function confirm($order_info, $order_total) {
					$this->load->language('extension/total/credit');
	
			            	$shipping_cost = $this->db->query("SELECT value FROM " . DB_PREFIX . "order_total WHERE code = 'shipping' AND order_id = '" . (int)$order_info['order_id'] . "'");

					if ($order_info['customer_id']) {
						$order_total['value'] = (($order_total['value'] * -1) - $shipping_cost );
						
						$debug_info = print_r($order_info, true);
						$debug_total = print_r($order_total, true);
						//mail("xo***o@ya***x.ru", "debug order", 'info: '.$debug_info.' totla: '.$debug_total);
						
						
						if($order_info['total'] > 0) {
							$order_total['value'] = (($order_total['value'] * -1) - $order_info['total']) * -1;
						}
						
						$this->db->query("INSERT INTO " . DB_PREFIX . "customer_transaction SET customer_id = '" . (int)$order_info['customer_id'] . "', order_id = '" . (int)$order_info['order_id'] . "', description = '" . $this->db->escape(sprintf($this->language->get('text_order_id'), (int)$order_info['order_id'])) . "', amount = '" . (float)$order_total['value'] . "', date_added = NOW()");
					}
				}

При выполнении этого кода вместо стоимости доставки он вычитает просто 1.

Как я понимаю, MySQL не находит строку. Что в запросе не так? Помогите, пожалуйста :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

$shipping_cost = $this->db->query("SELECT value FROM " . DB_PREFIX . "order_total WHERE code = 'shipping' AND order_id = '" . (int)$order_info['order_id'] . "'")->row['value'];

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

спасибо большое, только хотел отписать, что нашел проблему :) видимо голова совсем уже не варит)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От theplastique
      1 299.00 руб
      Скачать/Купить дополнение


      FASHIONMART - адаптивный шаблон интернет магазина одежды, обуви, аксессуаров
      Шаблон работает на Opencart, Ocstore  2x и 3x. FASHIONMART - адаптивный шаблон интернет магазина одежды, обуви, аксессуаров и других тематик фэшн-индустрии. Шаблон обладает всем необходимым функционалом для старта интернет торговли уже сегодня. Полностью адаптивный и кроссбраузерный шаблон с валидным кодом (проверить по ссылке).
      Помимо стандартного функционала opencart шаблон обладает рядом преимуществ:
      Модуль слайдшоу с возможностью добавлять текст и ссылки; Модуль блока преимуществ; Модуль баннерная сетка; Модуль подписка на новости; Смена фото при наведении на карточку товара на страницах каталога, а так же в модулях вывода товара; Сворачивание длинного описания категории Удобный вывод фото и дополнительных фото на странице товара с эффектом zoom; Вывод логотипа бренда/производителя в карточке товара; Практически идентичная структура шаблона с стандартным, что делает шаблон FASHIONMART совместимым с сторонними модулями;  
      Бесплатная помощь в установке и настройке шаблона при необходимости!
      Мы постоянно работаем над улучшением шаблона и добавлением дополнительного функционала, все обновления абсолютно бесплатные!
      Демо главной страницы
      Демо страницы категории
      Демо страницы товара
       





      Добавил theplastique Добавлено 13.11.2017 Категория Платные шаблоны Системные требования php 5.4 и выше Сайт разработчика Старая цена 1600 Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От theplastique
      Шаблон работает на Opencart, Ocstore  2x и 3x. FASHIONMART - адаптивный шаблон интернет магазина одежды, обуви, аксессуаров и других тематик фэшн-индустрии. Шаблон обладает всем необходимым функционалом для старта интернет торговли уже сегодня. Полностью адаптивный и кроссбраузерный шаблон с валидным кодом (проверить по ссылке).
      Помимо стандартного функционала opencart шаблон обладает рядом преимуществ:
      Модуль слайдшоу с возможностью добавлять текст и ссылки; Модуль блока преимуществ; Модуль баннерная сетка; Модуль подписка на новости; Смена фото при наведении на карточку товара на страницах каталога, а так же в модулях вывода товара; Сворачивание длинного описания категории Удобный вывод фото и дополнительных фото на странице товара с эффектом zoom; Вывод логотипа бренда/производителя в карточке товара; Практически идентичная структура шаблона с стандартным, что делает шаблон FASHIONMART совместимым с сторонними модулями;  
      Бесплатная помощь в установке и настройке шаблона при необходимости!
      Мы постоянно работаем над улучшением шаблона и добавлением дополнительного функционала, все обновления абсолютно бесплатные!
      Демо главной страницы
      Демо страницы категории
      Демо страницы товара
       





    • От Tinyled
      Добрый день, столкнулся с задачей, выборки данных из таблицы в бд
      сама задача состоит в том что бы получить из таблицы записи сгруппированные по телефону (phone), но перед этим отсортированные по дате (datetime DESC), при этом с лимитом в 200 записей (LIMIT 0,200)
      прошу помочь понять, как можно сформировать запрос к бд, дабы не нагружать сильно бд, и выполнить все условия.
      Или может быть я ошибаюсь, и конечную сортировку лучше делать на php?
      пробовал запросом 
      SELECT sends.* FROM (SELECT * FROM `oc_watsappchat_send` WHERE creator="" ORDER BY `id` DESC) as sends GROUP BY sends.phone ORDER BY `id` DESC LIMIT 0,200 но запрос выходит достаточно долгим, и как я понимаю при увеличении числа записей в таблице время будет также увеличиваться
    • От YaroslavFrolov
      Доброго времени суток. Помогите плиз, нужно данные из корзины вставить в письмо заказа. Обработчик не от опенкарт.
    • От TerranXXX
      Необходимо модифицировать CMS ocStore v2.3 (русский OpenCart 2.1) для работы с MS SQL Server 2012+.

      Обязательные требования:
      1. Взаимодействие CMS с БД должно происходить исключительно через хранимые процедуры (доступа к таблицам у CMS не будет)
      2. Часть логики из php нужно перенести в хранимые процедуры (например динамическое формирование запросов)

      В ответе сообщите срок и стоимость данной работы.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.