Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Konfiguracja Fulltext? Jakie są opcje konfiguracji tego mechanizmu?
kukix
post
Post #1





Grupa: Zarejestrowani
Postów: 600
Pomógł: 2
Dołączył: 1.09.2002
Skąd: Wrocław

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


Witam.

Przygotowałem wysukiwarkę na bazie FULLTEXT.. problem w tym, że dziąła dosyć dziwnie.. mianowicie.. jeżeli wpiszę w wyszukiwarce "w100i" to pokazuje mi dwa wyniki.. a jak wpisze "w100" to nie zwraca mi żadnych wyników thumbsdownsmileyanim.gif

Czy można coś zrobić, żeby nie trzebab yło wpisywac całych wyrazów, ale żeby można było tez wycinki?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A wpisz
Kod
w100*
? wink.gif`


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kukix
post
Post #3





Grupa: Zarejestrowani
Postów: 600
Pomógł: 2
Dołączył: 1.09.2002
Skąd: Wrocław

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


Cytat(erix @ 27.06.2011, 22:29:12 ) *
A wpisz
Kod
w100*
? wink.gif`

Ja o tym wiem, ale Ci co wyszukiwarką nie wiedzą.. kiedyś widziałem na tym forum na wyszukiwarce było coś takiego do zaznaczenia, żeby wyszukiwał tylko "całe wyrazy".. i to pole checkbox uruchamiało jakiś mechanizm w wyszukiwarce, ale nie wiem jaki..
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




No to wtedy wystarczy przeparsować każdy wyraz i dopisać tego wildcarda "wewnętrznie". [;


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
by_ikar
post
Post #5





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


No a jak szukasz w bazie danych, np mysql, to też liczysz na to że użytkownik ci wklepie LIKE %something% ? czy sam opakowujesz "something" w proceny ?
Go to the top of the page
+Quote Post
kukix
post
Post #6





Grupa: Zarejestrowani
Postów: 600
Pomógł: 2
Dołączył: 1.09.2002
Skąd: Wrocław

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


Witam jeszcze raz.

Pozwolę sobie odgrzać ten temat.

Mam już zbudowaną wyszukiwarkę na podstawie mechanizmu FULL TEKST.

Problem w tym, że jak podaje "książka" to pokazuje mi odpowiednie wyniki, natomiast jak podam "książk" to nie pokazuje nic.

Próbowałem dodac na końcu gwiazdkę *, ale nie pomaga.. czy mam wyłączone wyrażenia regularne, czy czym to może być spowodowane?
Go to the top of the page
+Quote Post
erix
post
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Pokaż zapytanie, jakiego używasz.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kukix
post
Post #8





Grupa: Zarejestrowani
Postów: 600
Pomógł: 2
Dołączył: 1.09.2002
Skąd: Wrocław

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


Cytat(erix @ 22.11.2011, 16:17:18 ) *
Pokaż zapytanie, jakiego używasz.



Witam. chciałem wrócić do tego tematu.

Przeszkadza mi strasznie to, że jak wpisze częśc wyrazu to nie wyszukuje mi tego co potrzebuje.

Nie jestem zadowolony z tego FULLTEXT'u .. nie można wpisac połowe wyszukiwanej frazy, ale idealnie całą.. tak samo widze, że działa na allegro.. często próbuje dokładać gwiazdki * ale to i tak raz pomaga raz nie..

U mnie jak dokładam na końcu gwiazdkę to też nie pomaga.. czy ten fulltext ma jakieś opcje konfiguracji ?

Moj zapytanie wygląda tak:

  1. SELECT SQL_CALC_FOUND_ROWS *,
  2. MATCH(nazwa, opis_krotki, keywords, param_a, param_b, kod) AGAINST ('".mysql_escape_string($_GET['szukaj_fraza'])."') AS score
  3.  
  4. FROM art
  5.  
  6. WHERE
  7. ( (MATCH(nazwa, opis_krotki, keywords, param_a, param_b, kod) AGAINST ('".mysql_escape_string($_GET['szukaj_fraza'])."'))
  8. OR id LIKE '%".mysql_escape_string($_GET['szukaj_fraza'])."%' )
  9. AND zablokuj=0
  10.  
  11. ORDER BY score DESC
  12.  
  13. LIMIT 0 20;
Go to the top of the page
+Quote Post
Niktoś
post
Post #9





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Jeśli działa Ci tak jak na allegro to chyba dobrze działa.Chyba ,że także masz problemy z wyszukiwaniem produktów na tamtym portalu.Wątpię czy w MySQL'owym FULL TEXT SEARCH uda się takie coś uzyskać, na pewno w MSSQL dało by się, gdyż w samym wyszukiwaniu można ustawić stopień precyzji słowa wyszukiwanego a dodatkowo opierać sie o słownik Tazarusa gdzie można na przykład pomijać spójniki lub określić wyrazy bliskoznaczne dla wyszukiwanej frazy.FULL TEXT SEARCH w MySQL jest ubogi w porównaniu z MSSQL ,ale to tylko nowinka.
Użytkownik po prostu niech wpisuje poprawnie szukane frazy.

Ten post edytował Niktoś 1.03.2012, 19:42:38
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 21:22