![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 26.07.2011 Ostrzeżenie: (20%) ![]() ![]() |
Chce dodawać pewne produkty i często jeden produkt można podpiąć do kilku kategorii, gdy w tabeli produkty w kolumnie typ podałem "spodnie, krotkie spodenki" i zapytanie:
Kod SELECT * FROM produkty where typ="spodnie (lub) krotkie spodenki" Oczywiście w zapytaniu nie używałem LUB ![]() Pytam osobno o każdą kategorię, nie wyciąga ani spodni, ani krótkich spodenek, nie wywala też błędu, poprostu puste pole. Jak ustawić kilka kategorii dla jednego produktu, nie można używać przecinka w bazie w polu typ? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tagi trzymaj w osobnej tabeli (np. UserTags | UserID, TagID).
-------------------- Google knows the answer...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 26.07.2011 Ostrzeżenie: (20%) ![]() ![]() |
Ok, więc co z tymi kategoriami?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Co?
-------------------- Google knows the answer...
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 26.07.2011 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Przecież to tylko nazewnictwo. Chodzi o samą zasadę. Trzy tabele: Posts, Categories, PostCategories, która łączy.
-------------------- Google knows the answer...
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 182 Pomógł: 9 Dołączył: 30.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
fifi770 dał działające rozwiązanie, ale Tho, co jeśli będziesz chciał wylistować kategorie? Przerezasz całą bazę produktów i skompletujesz wszystkie wystapienia, potem jeszcze explode po ' LUB '. Trochę to czasochłonne. Pedro84 podał wzorcowe rozwiązanie.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 26.07.2011 Ostrzeżenie: (20%) ![]() ![]() |
Mam tworzyć nową zmienną? Chyba coś pokrzaniłeś z cudzysłowami, bo błędy wyskakują...
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 182 Pomógł: 9 Dołączył: 30.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Nie, musisz utworzyć dwie tabele dodatkowe. Jedną z nazwami wszystkich możliwych kategorii, drugą wiążącą produkty z kategoriami (id z produktu oraz id z kategorii).
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 26.07.2011 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 182 Pomógł: 9 Dołączył: 30.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
user_id to klucz obcy na podstawie klucza podstawowego users, pozwala rozróżnić krotki, więc na upartego może być choćby mail z distinctem, ale się używa id, bo tak
![]() |
|
|
![]()
Post
#13
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wzorowe, tylko po co user id, jeśli mój serwis nawet jescze nie obsługuje logowania? ![]() Kolego, a czy wiesz co to jest takiego logiczne myślenie? Masz przykładowe tabele: Products, Categories. Musisz wówczas utworzyć trzecią tabelę o nazwie ProductCategories, w której to będziesz przechowywał kategorie danego produktu:
No ja już prościej tego wyjaśnić nie potrafię. Pamiętaj, musisz sobie dostosować nazewnictwo do swojej bazy, to TYLKO przykład zastosowania. Rozwiązanie podane przez fifi ma wiele wad (spróbuj np. utworzyć z tego listę, czy select'a). @uirapuru - Coś w tym jest i to nie tylko na tym forum... Ten post edytował pedro84 25.08.2011, 11:57:58 -------------------- Google knows the answer...
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 182 Pomógł: 9 Dołączył: 30.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem, czy ja się starzeję, a wcześniej tego nie dostrzegałem, czy może jest tak, że coraz więcej osób z roszczeniowym nastawieniem na forum 'żąda' gotowych rozwiązań podanych na tacy?
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.06.2025 - 06:50 |