Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie MySQl zwraca 0
duch4ever
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 22.06.2010

Ostrzeżenie: (0%)
-----


Witam mam takie proste zapytanie:

  1. //zwraca wartosc brutto wszytkich przedm. w koszyku (bez promocji i rabatow)
  2. $suma_w_koszyku = intval(Db::getInstance()->getValue('
  3. SELECT SUM(cp.`quantity` * p.`price` + pa.`price`) * (t.`rate` / 100 + 1)
  4. FROM `'._DB_PREFIX_.'cart` c, `'._DB_PREFIX_.'cart_product` cp, `'._DB_PREFIX_.'product` p, `'._DB_PREFIX_.'tax` t, `'._DB_PREFIX_.'product_attribute` pa
  5. WHERE cp.`id_product` = p.`id_product`
  6. AND cp.`id_cart` = c.`id_cart`
  7. AND t.`id_tax` = p.`id_tax`
  8. AND cp.`id_product_attribute` = pa.`id_product_attribute`
  9. AND c.`id_cart` = '.intval($cookie->id_cart))
  10. );


Ma ono w sklepie pobrać sumę wartości przedmiotów w koszyku klienta. Wszystko dobrze zliczało ale niektóre przedmioty miały atrybuty które zwiększały cenę o daną kwotę.
Więc dodałem sobie + pa.`price` i dodatkową tabele z której bierze dane `'._DB_PREFIX_.'product_attribute` pa. Jest ok zlicza jak trzeba dodaje tą kwote jeśli przedmiot ma atrybut ale nie sumuje wartości przedmiotów które nie mają dodanych żadnych atrybutów. Czyli jeśli dodam do koszyka przedmiot bez atrybutu czyli w tabeli product_attribute nie ma wiersza z id przedmiotu który się doda zwraca 0. Myślałem że jeśli nie znajdzie wiersza doda 0 i wyświetli normalną ceną a tu zonk (IMG:style_emoticons/default/sad.gif) Jak zrobić żeby było jak trzeba?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 07:48