Mam zapytanie w sklepie oscommerce i musialem je troche przerobic wyglada nastepujaco :
SELECT DISTINCT p.products_image, p.products_quantity, pd.products_description, m.manufacturers_id, p.products_id, pd.products_name, p.products_price, p.products_retail_price, p.products_tax_class_id, IF(s.STATUS, s.specials_new_products_price, NULL) AS specials_new_products_price, IF(s.STATUS, s.specials_new_products_price, p.products_price) AS final_price FROM (((products p LEFT JOIN products_to_products_extra_fields p2pef ON p.products_id=p2pef.products_id) LEFT JOIN manufacturers m USING(manufacturers_id), products_description pd) LEFT JOIN specials s ON p.products_id = s.products_id, categories c, products_to_categories p2c) WHERE p.products_status = '1' AND c.categories_status = '1' AND p.products_id = pd.products_id AND pd.language_id = '1' AND p.products_id = p2c.products_id AND p2c.categories_id = c.categories_id AND p2pef.products_extra_fields_id='2' AND p2pef.products_extra_fields_value LIKE 'ZMIENNA1' OR p2pef.products_extra_fields_id='3' AND p2pef.products_extra_fields_value LIKE 'ZMIENNA2' OR p2pef.products_extra_fields_id='4' AND p2pef.products_extra_fields_value LIKE 'ZMIENNA3' GROUP BY p.products_id ORDER BY pd.products_name
Zmian dokonalem dodajac nastepujace dane :
p2pef.products_extra_fields_id='2'AND p2pef.products_extra_fields_value LIKE '25' OR p2pef.products_extra_fields_id='3' AND p2pef.products_extra_fields_value LIKE '52' OR p2pef.products_extra_fields_id='4' AND p2pef.products_extra_fields_value LIKE '15'
W formularzu mam 3 pola ktore odpowiadaja nastepujacym zmiennym :
ZMIENNA1 - srednica wewnetrzna
ZMIENNA2 - srednica zewnetrzna
ZMIENNA3 - szerokosc
Podając którą kolwiek zmienna ale tylko jedna wszystkie wartosci sa zwracane poprawnie wyswietla tyle wynikow ile spelnia zapytanie ale podajac wszystkie 3 zmienne do zapytania zaczyna sie robic balagan gdyz wszystkie dane oprocz nazwy towaru sa dobre a nazwa towaru przyjmuje wartosc pierwszego zapisanego w tabeli. Nie wiem jak zmienic aby przy podaniu wszystkich trzech zmiennnych otrzymuwac dalej poprawne wyniki.