Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][algorytm] Wiele kategorii
Spirit86
post
Post #1





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

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


Witam,
mam ostatnio na "ruszcie" następujący problem.
Mam tabelę w bazie danych z jakimiś tam rekordami .
Szkielet (+-)
Kod
id, tittle, ..., cat
.
Wszystko piękne i logiczne, jednakże problem się pojawia, gdy rekord ma być ukazywaany w wielu kategoriach na raz. Tzn. dla jednego rekordu wiele kategorii.
Oczywiście można dodać x takich samych rekordów z różnymi kategoriami, tylko to jest nierozsądne - niepotrzebnie zaśmiecamy bazę danych.
Kolejnym pomysłem jaki przyszedł mi do głowy, jest aby pole kategori było zapisywane tak: id_cat,id_cat,id_cat , lub ID_catID_catID_cat jednakże wtedy pojawił by się problem z warunkiem wysyłanym do bazy danych :
  1. SELECT
  2. FROM `tabela` WHERE cat LIKE '%selected_cat%'
(takie pytanie zwróci mi też rekordy, które nie pasują do wybranej kategorii.

Ech, ma ktoś jakiś dobry pomysł, jak to wszystko rozwiązać? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Spirit86 24.09.2005, 19:11:24
Go to the top of the page
+Quote Post
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Rozbić na 2 tabele?

Jedna z: id rekordu, tytuł, opis, itp.
Druga z: id rekordu, kategoria do której należy
Go to the top of the page
+Quote Post
Spirit86
post
Post #3





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

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


w sumie całkiem niezły pomysł. Nie widzę, jak na razie, żadnych wad. No może poza jedną, będę musiał zadać dwa, lub więcej pytań do bazy danych zamiast jednego.
Go to the top of the page
+Quote Post
tarlandil
post
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 29.04.2005

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


Po co wiele zapytan? Wystarczy zrobic zlaczenie.
np.
  1. SELECT *
  2. FROM tab1,tab2 WHERE tab1.id=tab2.id AND tab2.cat=costam;
Go to the top of the page
+Quote Post

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: 23.08.2025 - 04:41