Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Pełnotekstowe wyszukiwanie
kosior11
post
Post #1





Grupa: Zarejestrowani
Postów: 101
Pomógł: 0
Dołączył: 20.03.2011

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


Witam,

do wyszukiwania treści używam metody MATCH AGAINST, metoda ta wyświetla wyniki według trafności (najpierw te najbardziej trafione później mniej itp.). Moje pytanie brzmi czy można ograniczyć wyniki wyszukiwania w tym przypadku wyłącznie do tych najbardziej trafnych, bo np. gdy wpisuje w pole wyszukiwania frazy: "kategoria lokalizacja" to wyszukuje mi najpierw wyniki w których znajdują się obie frazy -czyli to pożądane, a później wszystkie wyniki z kategorii i wszystkie wyniki z lokalizacji a ja chciałbym pominąć te dwa ostatnie rozwiązania.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Tak BTW pomyśl o SQL-Injection...

  1. $search = $_GET['keyword_tag']; // tu dokładnie pomyśl o tym :)
  2. $search = preg_replace('#\s{2,}#s',' ',trim($search));
  3.  
  4. $sql = 'SELECT * FROM tabela WHERE MATCH (kat1, kat2, kat3, kat4 ...katn) AGAINST ("';
  5.  
  6. $sql.= '+'.implode(' +',explode(' ',$search));
  7.  
  8. $sql.= '" IN BOOLEAN MODE)';
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: 16.10.2025 - 08:13