Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 10.03.2005 Ostrzeżenie: (0%)
|
Witam ponownie!
Mój problem polega na tym że potrzebuję zrobić system przeglądania wpisów, z których każdy ma jakąś kategorie główną i podkategorie. Liczba kategori i podkategori jest dynamiczna, użytkownik sam sobie je definiuje. PROBLEM : Jak wstawić takie coś do bazy MySqla? Jak potem stworzyć zapytanie, w którym wybieramy wpisy z danej kategori lub podkategori? Głównie problem polega na tym że do bazy trzeba wstawić więcej niż 1 podkategorie. Mam już kolumnę "Kategoria", myślałem nad stworzeniem drugiej kolumny "Podkategorie", ale co tam wstwaić? Stringi nazw kategori oddzielone przecinkami, potem ewentualnie rozbijać to przy użyciu funkcji expolde z php? Cały czas rozbijam się o to że w 1 kolumnie może być własnie te pare podkategori. Niestety nie mogę dodać sobie komumn "Podkategoria_1", "Podkategoria_2" itd. Myślałem nad typem enum... ale to chyba nie zda egzaminu. Moja pierwsza propozycja jest taka : Nazwy kategori zapisac jako string, rozdzielone przecinkami, kazda nazwa bedzie miala swoj znak konca i poczatku stringu, tzn. zapis bedzie mniej wiecej taki : @nazwa kategori 1@, @nazwa kategori 2@... itd gdzie znaki @ to poczatek i koniec stringu. Potem dajemy tylko wyszukiwanie przez SELECT i w WHERE dajemy 'Podkategorie' LIKE '@%nazwa kategori szukanej%@'. Może nawet obejdzie się bez %. Jakieś pomysły? Ten post edytował pc5 19.04.2005, 21:00:09 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 10.03.2005 Ostrzeżenie: (0%)
|
Wydaje mi się że znalazlem prostsze rozwiązanie, to proponowane przezemnie wcześniej. Otóż w doatkowej kolumnie podkategorie_id typu char przechowuję string, budowany przez impolde, a w stringu umieszczam id wybranych podkategori, potem sprawdzam czy dana kategoria jest w podkategoriach, robie to wpierw tak ze daje expolode danego stringa i w ten sposob mam tablice z wybranymi id, a potem juz tylko sprawdzam czy dane id jest w tablicy (funkcja in_array troszke zmodyfikowaną). Działa ładnie.
Co do Twojego rozwiązania nospor, widać nie dorosłem jeszcze w edukacji mysqla do zastosowania takiej konstrukcji. Jednak na pewno do tego wrócę i przyda się na pewno. Tak więc na razie stosuję swoje rozwiązanie. Dzięki za pomoc! Pozdrawiam! |
|
|
|
pc5 Kategoria i podkategorie 19.04.2005, 20:40:16
nospor tabela kategorie (kolumny):
CytatID
NAME
.....jaki... 20.04.2005, 07:55:16
pc5 Cytat(nospor @ 2005-04-20 06:55:16)tabela kat... 20.04.2005, 10:33:55
nospor W rozwiązaniu co Ci podałem dla danej kategorii mo... 20.04.2005, 10:41:27
pc5 Cytat(nospor @ 2005-04-20 09:41:27)W rozwiąza... 20.04.2005, 17:51:09
nospor Skoro już tak bardzo upierasz się przy swoim rozwi... 21.04.2005, 08:16:19
nospor Twoje rozwiązanie ma poważną wadę.
Przykładowo:
Ż... 21.04.2005, 12:53:44 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 21:16 |