n1c Опубликовано 16 февраля, 2016 Жалоба Поделиться Опубликовано 16 февраля, 2016 Добрый день друзья!Подскажите, пожалуйста, как вывести amount (количество) и price (цену) возле номера заказа в ЛК?Чтобы получилось так: Ваш заказ №1 (3шт, по 100$);Ваш заказ №2 (1шт, по 300$); Цитата Ссылка на сообщение Поделиться на другие сайты
Kniazdiit Опубликовано 16 февраля, 2016 Жалоба Поделиться Опубликовано 16 февраля, 2016 Что-то типа такого? https://yadi.sk/i/GausVT-movx5f Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 16 февраля, 2016 Автор Жалоба Поделиться Опубликовано 16 февраля, 2016 Что-то типа такого? https://yadi.sk/i/GausVT-movx5f да, только в личном кабинете пользователя. и без каких либо скриптов)) просто цифры) Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 16 февраля, 2016 Жалоба Поделиться Опубликовано 16 февраля, 2016 да, только в личном кабинете пользователя. и без каких либо скриптов)) просто цифры) Сомнительно, что кто Вам подскажет, как это сделать без скриптов...То есть надо по щучьему велению, по Вашему хотению.Тогда Вам к проруби... Добрый день друзья!Подскажите, пожалуйста, как вывести amount (количество) и price (цену) возле номера заказа в ЛК?Чтобы получилось так:Ваш заказ №1 (3шт, по 100$);Ваш заказ №2 (1шт, по 300$); И образец записей у Вас бессмысленный, как будто не знаете, что такое заказ... Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 16 февраля, 2016 Автор Жалоба Поделиться Опубликовано 16 февраля, 2016 Сомнительно, что кто Вам подскажет, как это сделать без скриптов...То есть надо по щучьему велению, по Вашему хотению.Тогда Вам к проруби... И образец записей у Вас бессмысленный, как будто не знаете, что такое заказ... имелось введу без jQuery, JS потому что на скрине видно что используютсяа образец просто навел пример, потому как бывают разные люди Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 16 февраля, 2016 Жалоба Поделиться Опубликовано 16 февраля, 2016 (изменено) имелось введу без jQuery, JS потому что на скрине видно что используются а образец просто навел пример, потому как бывают разные люди Обычно разные люди знают, что в заказе не бывает Ваш заказ №1 (3шт, по 100$); а бывают НЕСКОЛЬКО товаров по РАЗНЫМ ценам... Подскажите, пожалуйста, как вывести amount (количество) и price (цену) возле номера заказа в ЛК?Надо добавлять код в view/UserView.php и в шаблоне. Если готовы оплачивать - обращайтесь... Изменено 16 февраля, 2016 пользователем Kors Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 17 февраля, 2016 Автор Жалоба Поделиться Опубликовано 17 февраля, 2016 (изменено) Может кто-то направит на верный путь.Делаю в UserView.php в метод пост — $purchasesкод как в OrderView.php $purchases = $this->orders->get_purchases(array('order_id'=>intval($order->id))); if(!$purchases) return false; $products_ids = array(); $variants_ids = array(); foreach($purchases as $purchase) { $products_ids[] = $purchase->product_id; $variants_ids[] = $purchase->variant_id; } $products = array(); foreach($this->products->get_products(array('id'=>$products_ids)) as $p) $products[$p->id] = $p; $variants = array(); foreach($this->variants->get_variants(array('id'=>$variants_ids)) as $v) $variants[$v->id] = $v; foreach($variants as $variant) $products[$variant->product_id]->variants[] = $variant; foreach($purchases as &$purchase) { if(!empty($products[$purchase->product_id])) $purchase->product = $products[$purchase->product_id]; if(!empty($variants[$purchase->variant_id])) { $purchase->variant = $variants[$purchase->variant_id]; } } и в конец добавляю: $this->design->assign('purchases', $purchases); но выводит ошибки, purchases не принимает Изменено 17 февраля, 2016 пользователем n1c Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 17 февраля, 2016 Жалоба Поделиться Опубликовано 17 февраля, 2016 Уже первая строка у Вас смысла не имеет, так как в view/UserView.php нет никакого $order и $order->id... Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 17 февраля, 2016 Автор Жалоба Поделиться Опубликовано 17 февраля, 2016 (изменено) Сделал сам. Но есть небольшой баг...в шаблоне user.tpl либо пропадает номер заказа, либо выводит огромный список заказов одних и тех же...подскажите как исправить? в UserView.php после: if(empty($this->user)) { ... } вставляем: $purchases = $this->orders->get_purchases(array('orders')); if(!$purchases) return false; после: $this->design->assign('orders', $orders); вставляем: $this->design->assign('purchases', $purchases); идем в design/theme/user.tpl и находим и после: {foreach name=orders item=order from=$orders} вставляем: {foreach $purchases as $purchase} и в средине пишем (тоже меняем и правим под себя): {($purchase->price)|convert} {$currency->sign} {($purchase->amount)|convert} {$cart->total_products|plural:'товар':'товаров':'товара'} Изменено 17 февраля, 2016 пользователем n1c Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 18 февраля, 2016 Жалоба Поделиться Опубликовано 18 февраля, 2016 Бред)Если хотите, чтобы работало - сначала надо у массива orders выбрать idПотом выбрать purchases по этим idА потом привязать purchases к orders Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 18 февраля, 2016 Жалоба Поделиться Опубликовано 18 февраля, 2016 Бред) Именно так. Бред начинается у Вас с первой строки Вашего нового кода: $purchases = $this->orders->get_purchases(array('orders'));Сделал сам. Но есть небольшой баг...в шаблоне user.tpl либо пропадает номер заказа, либо выводит огромный список заказов одних и тех же...подскажите как исправить? Скорее всего, это у Вас БОЛЬШОЙ баг - выводит все заказанные товары - и от своих заказов и от чужих, а Вы этого не замечаете, так как тестируете на малом числе заказов. Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 февраля, 2016 Автор Жалоба Поделиться Опубликовано 18 февраля, 2016 Именно так. Бред начинается у Вас с первой строки Вашего нового кода: Скорее всего, это у Вас БОЛЬШОЙ баг - выводит все заказанные товары - и от своих заказов и от чужих, а Вы этого не замечаете, так как тестируете на малом числе заказов. а Kors как всегда, ничего путевого, но надо написать Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 февраля, 2016 Автор Жалоба Поделиться Опубликовано 18 февраля, 2016 Бред)Если хотите, чтобы работало - сначала надо у массива orders выбрать idПотом выбрать purchases по этим idА потом привязать purchases к orders спасибо, посижу, попробую Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 февраля, 2016 Автор Жалоба Поделиться Опубликовано 18 февраля, 2016 Бред)Если хотите, чтобы работало - сначала надо у массива orders выбрать idПотом выбрать purchases по этим idА потом привязать purchases к orders если выводить как в OrderView массив $purchases = $this->orders->get_purchases(array('orders_id'=>intval($orders->id))); то сразу ошибка идет Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 18 февраля, 2016 Жалоба Поделиться Опубликовано 18 февраля, 2016 Потому что вы лепите непонятно что и куда, абсолютно не разбираясь в этом. $orders->id = ПОЛНЫЙ БРЕД Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 18 февраля, 2016 Автор Жалоба Поделиться Опубликовано 18 февраля, 2016 Потому что вы лепите непонятно что и куда, абсолютно не разбираясь в этом. $orders->id = ПОЛНЫЙ БРЕД а что не бред?выше вы указывали: Если хотите, чтобы работало - сначала надо у массива orders выбрать id Цитата Ссылка на сообщение Поделиться на другие сайты
trainracing Опубликовано 18 февраля, 2016 Жалоба Поделиться Опубликовано 18 февраля, 2016 оже очень интересна конечная работающая реализация) Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 19 февраля, 2016 Автор Жалоба Поделиться Опубликовано 19 февраля, 2016 Что-то типа такого? https://yadi.sk/i/GausVT-movx5f У вас нет реализации? Или вы просто уточнили? Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 19 февраля, 2016 Жалоба Поделиться Опубликовано 19 февраля, 2016 Вот именно, я имел в виду, что надо обойти весь массив $orders, у каждого элемента найти id и собрать НОВЫЙ масссив с этими АйДи.А если вы хотите волшебную строчку - то это вам к колдунам, а не программистам Зачем у вас в профиле написано Программирование, если вы не имеете понятия, что такое МАССИВ???И как с ним нужно работать? Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 19 февраля, 2016 Автор Жалоба Поделиться Опубликовано 19 февраля, 2016 Вот именно, я имел в виду, что надо обойти весь массив $orders, у каждого элемента найти id и собрать НОВЫЙ масссив с этими АйДи.А если вы хотите волшебную строчку - то это вам к колдунам, а не программистам Зачем у вас в профиле написано Программирование, если вы не имеете понятия, что такое МАССИВ???И как с ним нужно работать? в лифте тоже много чего написано, а если любите пообсуждать на форуме Simpla вместо самой темы которую задают, то могу написать что написано в моем лифте Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 19 февраля, 2016 Жалоба Поделиться Опубликовано 19 февраля, 2016 Если хотите готовый код - за 10-20 долл с удовольствием вам помогу.Если хотите на халяву - придется немного подумать.Я вам дал направление.Ждите, может быть кто-то выложит вам все готовое Удачи! Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 19 февраля, 2016 Автор Жалоба Поделиться Опубликовано 19 февраля, 2016 Если хотите готовый код - за 10-20 долл с удовольствием вам помогу.Если хотите на халяву - придется немного подумать.Я вам дал направление.Ждите, может быть кто-то выложит вам все готовое Удачи! чет 10-20 долларов многовато звучит за такое...это ведь не модуль! Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 19 февраля, 2016 Жалоба Поделиться Опубликовано 19 февраля, 2016 (изменено) а что не бред?выше вы указывали: Костя правильно все указал. нужно делать например так.заменить в UserView.php $orders = $this->orders->get_orders(array('user_id'=>$this->user->id)); на $orders = array(); $orders_ids = array(); foreach($this->orders->get_orders( array('user_id'=>$this->user->id) ) as $o) { $orders_ids[] = $o->id; $orders[$o->id] = $o; } if(!empty($orders)) { $purchases = $this->orders->get_purchases(array('order_id'=>$orders_ids)); foreach($purchases as $p) $orders[$p->order_id]->purchases[] = $p; } а не совать все подряд непонимая что как работает и тем более еще в метод пост. вы же делаете это кому-то как программист и не за спасибо Изменено 19 февраля, 2016 пользователем mishanya Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 19 февраля, 2016 Автор Жалоба Поделиться Опубликовано 19 февраля, 2016 (изменено) Костя правильно все указал. нужно делать например так.заменить в UserView.php $orders = $this->orders->get_orders(array('user_id'=>$this->user->id)); на $orders = array(); $orders_ids = array(); foreach($this->orders->get_orders( array('user_id'=>$this->user->id) ) as $o) { $orders_ids[] = $o->id; $orders[$o->id] = $o; } if(!empty($orders)) { $purchases = $this->orders->get_purchases(array('order_id'=>$orders_ids)); foreach($purchases as $p) $orders[$p->order_id]->purchases[] = $p; } а не совать все подряд непонимая что как работает и тем более еще в метод пост. вы же делаете это кому-то как программист и не за спасибо за спасибо или не за спасибо, это вопрос уже другой, но 10-20$ за несколько строк это перебор. как говорится "меньше кусай, на дольше хватит" Изменено 19 февраля, 2016 пользователем n1c Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 19 февраля, 2016 Жалоба Поделиться Опубликовано 19 февраля, 2016 Вот же му**к! Ему все разжевали, готовый код дали, а оно еще чем-то и недовольно...Хоть бы спасибо сказал! Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.