Wpis z mikrobloga

Witajcie mirki z #php.

Nawarzyłem sobie bigosu iteraz muszę sobie z tym radzić… ( ͡° ͜ʖ ͡°)

Mam na stronie sklep. Podczas składania zamówienia zapisuję w tabeli każdy produkt z osobna (tak wydawało mi się łatwiej). Ale teraz muszę zrobić w podsumowaniu zamówienia tak, żeby jeżeli produkt się powtarza, to mam po prostu zwiększyć ilość, a nie wyświetlać oddzielnie.
Teraz mam tak:

zamowienie_produkt.id | ilosc
1 | 1
1 | 1
1 | 1
2 | 1

A chcę otrzymać tak:

zamowienie_produkt.id | ilosc
1 | 3
2 | 1

Załączam strukturę bazy danych.
aha, używam #symfony2, dlatego załączam kod:

public function getUnpayedOrder($user, $id)
{
$this->createQB('o')
->select('o, oi, pv');
$this->QB()
->leftJoin('o.item', 'oi');
$this->QB()
->leftJoin('oi.productVariation', 'pv');

$this->QB()
->where('o.user = :user AND o.id = :id AND (o.status = :status_prepared OR o.status = :status_waiting_for_payment)')
->setParameters([
'id' => $id,
'user' => $user,
'status_prepared' => Orders::STATUS_PREPARED,
'status_waiting_for_payment' => Orders::STATUS_WAITING_FOR_PAYMENT,
]);

$this->QB()
->orderBy('o.created', 'DESC');

$this->QB()
->groupBy('pv.id');

// $this->QB()
// ->setMaxResults(1);

return $this->getOneOrNullResult();
}

Do tej pory udało mi się zrobić by wyświetlało tylko unikalne produkty z zamówienia, ale nie mam pojęcia jak zrobić by wyświetlić ilość tych produktów.

#symfony #webdev #webdevhelp
mariecziek - Witajcie mirki z #php.

Nawarzyłem sobie bigosu iteraz muszę sobie z t...

źródło: comment_YtxbH8YmLFIS7YhFGtzLzaZZJFEQXHIq.jpg

Pobierz
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach