Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Wyszukiwarka danych (tagi)
Forum PHP.pl > Forum > PHP
amar91
Witam!
Tworze pewien serwis i bardzo zależy mi na efektywnej wyszukiwarce.
Mam nielada problem z jej zbudowaniem więc postanowiłem napisać tutaj.

Mam tabele w której jeden z rekordów zawiera tagi oddzielone spacjami (np. tag tag2 tag2 etc).
Moja obecna wyszukiwarka jest oparta o prosty LIKE i małą pentelke for, jest ona o tyle nie skuteczna, że po wpisaniu 2 tagów pojawiaja się wyniki zawiarejące nawet tylko jeden z tagów, a moim zamierzeniem jest wyświetlanie wyników które zawieraja, w tym przypadku, oby dwa tagi.

No i wesołych!
darko
Dobrze byłoby trzymać każdy tag w osobnym rekordzie i wtedy, jak odbierasz dane z formularza wyszukiwarki, wrzucasz każde słowo do tablicy (explode na spacji), jedziesz po niej i doklejasz do warunku where zapytania:
  1. // dla pierwszego elementu
  2. $sql.="nazwa_kolumny_tag = 'pierwsze'";
  3. // dla każdego następnego
  4. $sql.="and nazwa_kolumny_tag = 'kolejne'";
  5. $sql.="and nazwa_kolumny_tag = 'wpisane'";
  6. $sql.="and nazwa_kolumny_tag = 'słowo'";


Na końcu mysql_query i mysql_fetch_array i tyle.
wookieb
Myślę, że to Cię zainteresuje http://www.beldzio.com/czy-chodzilo-ci-o-%...6-czyli-n-gramy
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.