Autor Zpráva
Lorem
Profil *
Dobrý den,
dělám si takový malinký prototyp e-shopu a narazila jsem na první problém.
Kategorie, ve kterých se má produkt zobrazovat se ukládá do sloupce "parent_id" ve znění např. "1,2,5".
Zasekla jsem se nad tím, jak vytvořit sql dotaz pro count produktů v kategorii.
Chtělo by to sestavit nějak takhle :

$pro2_exists = @mysql_result(mysql_query('SELECT COUNT(id) FROM goods WHERE parent_id=\''.$kategorie[2].'\''),0);

Co potřebuji nějak pozměnit je právě, že potřebuji vytáhnout buď to první číslo z řady, nebo právě druhé, tedy něco jako :

$pro2_exists = @mysql_result(mysql_query('SELECT COUNT(id) FROM goods WHERE parent_id[2]=\''.$kategorie[2].'\''),0);

Prosím o radu :((
Bertram
Profil
Lorem:
Dobrý den,
jestli tomu dobře rozumím, tak bude nejlepší změnit způsob ukládání dat v db.
Můžete mit napříklat databázovou tabulku, která bude spojovat produkt s kategorií, ale pokud bude daný produkt patřit do tří kategorií, tak dude mít v tabulce tři řádky místo jednoho, který máte string kategorií oddělený čárkami.
Takže něco ve stylu:
produkt_id  | kategorie_id
1           |  1 
1           |  2
1           |  5 
2           |  5
Lorem
Profil *
Ano, ale to stále neřeší můj problém :) a to sice vkládání jednoho produktu do nekonečně mnoho kategorií :/ (Nebo alespoň do omezení 700 znaků u varcharu)


Ano, ale to stále neřeší můj problém :) a to sice vkládání jednoho produktu do nekonečně mnoho kategorií :/ (Nebo alespoň do omezení 700 znaků u varcharu). Takhle se vše tedy jednoduše zapíše 1,2,3,4,5,... Ale takhle bych musel mít pro každou kategorii zvlášť sloupec...
ninja
Profil
Lorem: Kategorie produktu ukládejte do samostatné tabulky, která bude jen vazebná. Tedy product_id, kategorie_id. Jedná se o klasickou vazbu M:N.
Lorem
Profil *
Bertram :
Aha, až teď mi to došlo :) děkuji za radu :D

Ninja : Jo jo, teď už to určo takhle udělám :D Děkuji

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: