Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Problem z wyszukiwaniem krótkich fraz
Forum PHP.pl > Forum > Przedszkole
mefistofeles
Witam,

Używam zapytania w stylu:

  1. 'SELECT count(id) ilosc FROM `tabela` WHERE match(tytul)
  2. against ("+'.$szukane.'*" IN BOOLEAN MODE) GROUP BY tytul order
  3. by match(tytul) against("+'.$szukane.'*") desc


Niestety dla krótkich stringów, 1,2,3 znakowych nie dostaje rekordów takich jak trzeba, tylko jakieś wyniki z kosmosu.
Podobno miało pomoć dodanie do my.cnf linii:

ft_min_word_len = 1

Po dodaniu i zrestartowaniu mysqla nic się nie zmieniło.
Co jeszcze można zrobić aby skrypt znajdował krótkie stringi ?
Noidea
http://dev.mysql.com/doc/refman/5.1/en/ful...ine-tuning.html - pierwsza kropka
thek
MATCH AGAINST ma ograniczenie: nie można wpisywać fraz krótchych niż 3 lub 4 znaki (nie pamiętam, ale chyba 3 już było za mało.). Jeśli jednak tak musi być, to musisz zaimplementować niestety ale mechanizm zwykłego LIKE, który w takiej sytuacji powinien przechwycić zapytanie.
Noidea
@thek Domyślnie minimalna długość wyrazu to 4 znaki, ale skoro mefistofeles ma dostęp do zmiennej ft_min_word_len, to może ten limit zmniejszyć nawet do 1. Dowód: http://dev.mysql.com/doc/refman/5.0/en/ser...ft_min_word_len
Problem miał, bo nie przebudował indeksu i wyszukiwało mu w starych danych "po staremu".
mefistofeles
Dokładnie, po przeładowaniu indeksu wszystko pięknie śmiga.
Dzięki za pomoc smile.gif

P.S.
Do moderatorów, od około miesiąca w FF po wejściu na forum lub podstronę po kilku sekundach wszystko
się przeładowuje na google custom search z frazą:
"forum php pl style_images top-opcjonalny null css"
Od miesiąca muszę używać IE, żeby móc się tutaj dostać, lub zatrzymać stronę w trakcie ładowania zanim przeładuje się na google...
thek
Może masz jakiś problem ze swoim Fx i jego dodatkami? Ja używam zawsze Fx up to date także z wieloma dodatkami i nie ma problemu ani na Ie, Fx, Operze czy Chrome. Używam wszystkich bez problemu i żaden browser nie robi problemu.
mefistofeles
Kilka dni temu zaktualizowałem Firefoxa, ale problem wciąż występuje.

[thek]: Spróbuj odinstalować dodatki i sprawdzaj metodą x/2, który sprawia problem. Wywal połowę i sprawdź. Jest problem nadal. Wywal kolejną połowę. Do momentu aż zacznie działać. Dzięki temu dowiesz się w której paczce wywalanych dodatków jest błąd. To najszybsza metoda stargetowania dodatku sprawiającego problem.
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.