Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wynik wyszukiwania
Forum PHP.pl > Forum > PHP
drakes
Witam,

Skonstruowalem wyszukiwarke wykorzystując mechanizm FULLTEXT opierajacą się na zapytaniu:
  1. SELECT pole FROM tabela WHERE MATCH (pole) AGAINST ('slowo kluczowe')


Chcialbym teraz tak sformatowac otrzymane pole aby w wyniku otrzymac jego fragment w postaci slowa kluczowego wraz z sasiednimi wyrazami (powiedzmy szesc po lewej stronie i tyle samo po prawej).

NIe musi byc to dokladnie 6 wyrazow, po prostu wycinek wyszukanego pola zawierający gdzieś w środku slowo kluczowe według ktorego wyszukiwano.

Coś takiego jak na stronie:
  1. www.biurotechnika.pl


Z gory dzieki za pomoc,
Jen
Rozwiazanie na pewno nie jest optymalne, ale mozesz zliczyc wyrazy w wyniku wyszukiwania, znalezc ktorym wyrazem jest szukane slowo, jezeli bedzie np. 9 to znaczy, ze przed nim jest 8 spacji, obliczyc ktorym znakiem jest 8-X (gdzie X - ilosc wyrazow widocznych przed i po szukanym slowie) spacja (od tego momentu tekst bedzie wyswietlany), obliczyc ktorym znakiem jest 8+X spacja (na tym znaku wyswietlany tekst sie skonczy) i potem zastosowac substr($wynik,8-X,(8+X)-(8-X)). No smile.gif

ps. wymaga to dopracowania, bo zle policzylam wartosci (sa roznice o 1), ale chodzi o idee.
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.