n1c Опубликовано 26 декабря, 2017 Жалоба Поделиться Опубликовано 26 декабря, 2017 Здравствуйте уважаемые форумчане!Подскажите пожалуйста, как вывести вес товара в корзине и заказе с учетом суммарной стоимости? 1 - 100 - 4101 - 250 - 5251 - 500 - 11501 - 1000 - 151001 - 2000 - 18 к примеру вес от 1 грамма до 100 грамм - 4 евро, если больше 101 грамма до 250 то - 5 евро и тдпри этом чтобы считало в total_price ?Спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
a13x Опубликовано 26 декабря, 2017 Жалоба Поделиться Опубликовано 26 декабря, 2017 если у товара прописан вес тогда суммировать вес всех продуктов (Х) и потом по вашему условию прогонять, например:if(X <= 100) weight_price = X * 4;elseif (X > 100 && X <= 250) weight_price = X * 5;...в концеelse weight_price = X * 18;ну и потом эту цену добавить к итоговой в корзине. Цитата Ссылка на сообщение Поделиться на другие сайты
Пастухов Опубликовано 26 декабря, 2017 Жалоба Поделиться Опубликовано 26 декабря, 2017 ...как вывести вес товара в корзине и заказе с учетом суммарной стоимости? Никак. Потому что вес товара НЕ зависит от стоимости. Если Вы хотите стоимость заказа считать в зависимости от веса, то надо примерно в десятке мест вносить изменения, чтобы стоимость корректно считалась и в корзине и в заказе (и еще в некоторых других местах). Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 27 декабря, 2017 Автор Жалоба Поделиться Опубликовано 27 декабря, 2017 если у товара прописан вес тогда суммировать вес всех продуктов (Х) и потом по вашему условию прогонять, например:if(X <= 100) weight_price = X * 4;elseif (X > 100 && X <= 250) weight_price = X * 5;...в концеelse weight_price = X * 18;ну и потом эту цену добавить к итоговой в корзине. Спасибо.Сделал вывод в карточке товара, и в заказе. Но как добавить к итоговой цене? + если добавить 2 товара в корзину, то уже считает как "4 4", и не суммирует как "8" В файле api/Orders.php строки: private function update_total_price($order_id) { $order = $this->get_order(intval($order_id)); if(empty($order)) return false; $query = $this->db->placehold("UPDATE __orders o SET o.total_price=IFNULL((SELECT SUM(p.price*p.amount)*(100-o.discount)/100 FROM __purchases p WHERE p.order_id=o.id), 0)+o.delivery_price*(1-o.separate_delivery)-o.coupon_discount, modified=NOW() WHERE o.id=? LIMIT 1", $order->id); $this->db->query($query); return $order->id; } не нужно править? Цитата Ссылка на сообщение Поделиться на другие сайты
a13x Опубликовано 28 декабря, 2017 Жалоба Поделиться Опубликовано 28 декабря, 2017 К итоговой цене имеется ввиду корзина сайта? Если да, то класс view/CartView.php.Должен не суммировать, а умножать кол-во товара на вес для каждого товара, а в конце выводить вес всех товаров, и уже общий вес прогонять по условию. Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 28 декабря, 2017 Жалоба Поделиться Опубликовано 28 декабря, 2017 К итоговой цене имеется ввиду корзина сайта? Если да, то класс view/CartView.php.Должен не суммировать, а умножать кол-во товара на вес для каждого товара, а в конце выводить вес всех товаров, и уже общий вес прогонять по условию. api/Cart.php а не view/CartView.php Цитата Ссылка на сообщение Поделиться на другие сайты
a13x Опубликовано 28 декабря, 2017 Жалоба Поделиться Опубликовано 28 декабря, 2017 api/Cart.php а не view/CartView.phpточно. Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 28 декабря, 2017 Автор Жалоба Поделиться Опубликовано 28 декабря, 2017 К итоговой цене имеется ввиду корзина сайта? Если да, то класс view/CartView.php.Должен не суммировать, а умножать кол-во товара на вес для каждого товара, а в конце выводить вес всех товаров, и уже общий вес прогонять по условию. я сделал давно вывод веса и вывод к сумме товара, но как оказалось не верно работает. если вес одного товара стоит 100г цена 4$, то за две футболки выводит 8$, а должно выводить 5$ сейчас в шаблоне order.tpl вывожу: {if $purchase->ves < 100} 4 {elseif $purchase->ves > 101 && {$purchase->ves} < 250} 5 {elseif $purchase->ves > 251 && {$purchase->ves} < 500} 11 {elseif $purchase->ves > 501 && {$purchase->ves} < 1000} 15 {elseif $purchase->ves > 1001 && {$purchase->ves} < 2000} 18 {/if} работает, но дальше не пойму как...что нужно указать в api/Cart.php? Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 17 января, 2018 Автор Жалоба Поделиться Опубликовано 17 января, 2018 Друзья, прошу помочь. как сделать суммарный вывод веса и общей цены я сделалкому нужно в шаблон/cart.tpl также поправил api/Cart.php, добавил туда total_ves {if $cart->total_ves <= 100} {($cart->total_price+4)|convert} {$currency->sign} {elseif $cart->total_ves >= 101 && {$cart->total_ves} <= 250} {($cart->total_price+5)|convert} {$currency->sign} {elseif $cart->total_ves >= 251 && {$cart->total_ves} <= 500} {($cart->total_price+11)|convert} {$currency->sign} {elseif $cart->total_ves >= 501 && {$cart->total_ves} <= 1000} {($cart->total_price+15)|convert} {$currency->sign} {elseif $cart->total_ves >= 1001 && {$cart->total_ves} <= 2000} {($cart->total_price+18)|convert} {$currency->sign} {/if} не могу сделать в заказе order.tplпоказывает цифры которые я не знаю откуда берет))) ну явно считает сумму умноженную на количество, хотя не толькоа как вывести общий вес не получается... Цитата Ссылка на сообщение Поделиться на другие сайты
Плохиш Опубликовано 18 января, 2018 Жалоба Поделиться Опубликовано 18 января, 2018 В заказе считает принципиально иначе. api/Orders.php function update_total_price(...) Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 января, 2018 Автор Жалоба Поделиться Опубликовано 18 января, 2018 В заказе считает принципиально иначе. api/Orders.php function update_total_price(...) да, это понятно, но если добавлю p.price*p.amount+p.ves тогда будет прибавлять вес в граммах (100, 200...), а мне нужно цену по значению как выше я указывал решение в корзине Цитата Ссылка на сообщение Поделиться на другие сайты
Плохиш Опубликовано 18 января, 2018 Жалоба Поделиться Опубликовано 18 января, 2018 Тогда надо писать соответствующую сложную формулу... Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 января, 2018 Автор Жалоба Поделиться Опубликовано 18 января, 2018 Тогда надо писать соответствующую сложную формулу...спасибо Капитан Очевидность, помог пипец Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 20 января, 2018 Автор Жалоба Поделиться Опубликовано 20 января, 2018 Ребята прошу помочь! Если кто знает - отзовись!) Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 24 января, 2018 Автор Жалоба Поделиться Опубликовано 24 января, 2018 Сделал, тема закрыта Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.