![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 17.03.2009 Skąd: Karpacz Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chcę stworzyć skrypt wyszukiwarki który wyszukuje mi zadaną fraze w bazie danych i zwraca wynik. Bardziej szczegółowo to tak: Pobieram z formularza frazę dziele ją poprzez $fraza_tab = explode(" ", $fraza); następnie wywołuje funkcje: wyszukaj($fraza_tab); w funkcji mam zapytania do bazy: $zapytanie = "select * from dane where nazwa like '% $fraza_tab[0] %' || nazwa like '$fraza_tab[0] %'"; itp. Pytanie moje brzmi: Czy mogę w środek zapytania wstawić pętle for lub foreach?? jeżeli będzie więcej niż jeden wyraz to niech sprawdzi warunki dla pierwszego drugiego itd Tylko w jaki sposób nadać zapytanie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Czy jedynym wyjściem jest wzięcie całego zapytania w pętle i sprawdzać poklei dla każdego wyrazu (co stwarza prawdopodobienstwo powtarzania się rekordów) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Proszę o pomoc |
|
|
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
A nie możesz zastosować przeszukiwania pełnotekstowego? Zakładasz index FULLTEXT na kolumnę, z której wyszukujesz dane, a następnie w zapytaniu dajesz:
Zakładam, ze masz tabele IMyISAM (dla InnoDB MATCH...AGAINST niestety nie działa) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 17.03.2009 Skąd: Karpacz Ostrzeżenie: (0%) ![]() ![]() |
A jakieś prostsze rozwiązanie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Do "przeszukiwania pełnotekstowego" muszę jeszcze się douczyć. Treść zapytania rozumiem ale tego nie bardzo "Zakładasz index FULLTEXT na kolumnę, z której wyszukujesz dane" Ten post edytował dje31 8.04.2009, 13:18:53 |
|
|
![]()
Post
#4
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
masz takie mega proste:
możesz sobie to przerobić, stworzyć funkcje w której podasz nazwę kolumny w tabeli, tablice etc. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 17.03.2009 Skąd: Karpacz Ostrzeżenie: (0%) ![]() ![]() |
Dzięki to jest rozwiązanie na które nie wpadłem
a generalnie faktycznie jest proste (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Dzięki Pozdrawiam |
|
|
![]()
Post
#6
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
choć ja Ci polecam fulltext. naprawdę można z tym niezłe rzeczy zrobić.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 08:59 |