Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] Wyszukiwarka po tagach, problem z wyszukiwarką
trciap
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 12.06.2009

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


Witam,
jestem nowy więc przepraszam za wszystkie błędy jakie popełnię na forum.

chodzi o to, że mam problem z tagami.

w moim skrypcie z filmikami,
przy każdym dodaniu filmu to z tytułu i opisu tworzą się tagi i dodają do mysql.

tabele wyglądają następująco

'tags'
id name
1 jakis
2 tag
3 inny
4 tag

itd.

oraz druga tabela

tag_film
id id_filmu id_tagu
1 15 15,16,17,18,19,
itd.

teraz jak mógł


jak wyświetlić wszystkie filmy np. które zawierają taga np. 'lol' ?

myślałem coś w stylu,

wpisana fraza->szukamy takiego taga,bierzemy jego id->id tego taga szukamy w tablei 'tag_film' i porównujemy z tymi w 'id_tagu'->później bierzemy id_filmu i wyświetlamy filmy o takim tagu

Ten post edytował trciap 12.06.2009, 09:06:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ddiceman
post
Post #2





Grupa: Zarejestrowani
Postów: 326
Pomógł: 121
Dołączył: 23.07.2008
Skąd: Wrocław

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


Przekleje tu to, co Ci odpisalem w PW, bo moze sie komus przyda:
Cytat
Witam mógłbyś mi pomóc z tą wyszukiwarką po tagach, bo jest to ostatnia rzecz jaką robię praktycznie w skrypcie, i już kurde nie wiem jak za bardzo to zrobić,

tzn. gdzie to mam użyć ?

  1. <?php
  2. tags (id[int], nazwa[varchar]) {nazwa - unique}
  3. films (id[int], nazwa[varchar]....)
  4. tag_to_film(id[int], id_tagu[int], id_filmu[int]); {para id_tagu, id_filmu - unique}
  5. ?>

stworzyc takie tabele w bazie danych. fachowo, to się nazywa "relacją M do N". w bazie danych (mysql?) tworzysz sobie tabele z tagami (zawierająca tylko id i nazwę tagu), swoją tabele z filmami zostawiasz jaką masz, ale usuwasz z niej pole id_tagu, co mialeś no i zamiast tego pola tworzysz trzecią tabelę z parami id_tagu-id_filmu.
w rezultacie otrzymujesz coś na kształt:
tagi:
Kod

id | nazwa
...
61 | lol
62 | wojna
...

filmy:
Kod

id | nazwa | jakies kolejne pola
...
25 | film wojenny
26 | komedia wojenna
...

tagi do filmow:
Kod
id | id_filmu | id_tagu
1  | 25       | 62
2  | 26       | 61
3  | 26       | 62

ostatnia tabela mowi Ci, ze do filmu 25 pasuje tylko tag 62 a do filmu 26 pasuja tagi 61 i 62

Ten post edytował ddiceman 12.06.2009, 11:17:13
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 14:12