Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%)
|
Ponieważ zaciekawiło mnie to co napisał Dragossani w <b>tym</b>wątku, postudiowałem manual do MySQLa i oto co z tego wynikło - wyszukiwarkę z określaniem trafności można zrobić jednym zapytaniem :-)
<i><b>Jak zrobić wyszukiwarkę?</b></i> Zacznijmy od początku: zakładamy, że chcemy zrobić własną wyszukiwarkę do forum phpBB. Na początku dodajemy do istniejącej tabeli prefix_posts_text jedno pole:
Jeżeli wszystko przebiegło pomyslne to możemy zająć się stworzeniem zapytania formularza wyszukiwania. Do wyszukiwania używamy funkcji mysqla
która zwraca wyniki trafności wyszukiwania. Teraz zróbmy z tego zapytanie:
zakładając, że w zmiennej $_POST["f"] mamy szukane wyrażenie. Jeżeli zapytanie działa, to jedziemy dalej, jeżeli nie to szukamy rozwiązania w manualu. Teraz przypisujemy odpowiednie wartości do tablic:
Teraz przygotujmy wyświetlanie wyników. Ponieważ zwracane wyniki trafności nie są za każdym razem identyczne, wyszukujemy najwiekszą wartość:
Teraz (w pętli) z proporcji obliczamy procenty trafności każdego zapytania, i wyświetlamy dane:
I wyszukiwarka gotowa :-) :arrow: <b>Przykład</b> Powyżej można zobaczyć przykład działania wyszukiwarki podpiętej pod phpBB. <i><b>Metoda działania wyszukiwarki.</b></i> (na podstawie moich obserwacji) Trafność zostaje wyliczona w następujący sposób - jest liczona ilosc szukanych słów i podstawiona do ilości ogólnej wyrazów w ciągu i na podstawie tego zostaje zwrócona wartość. Czyli mówiąc prościej - na górze strony wyszukiwania (największa trafność) będą posty z najwyższym stosunkiem wyrazów do szukanego ciągu, czyli np. najkrótsze posty z największą ilością szukanych słów. Ograniczeniem jest długość ciągu - wyszukiwarka działa dopiero przy szukanych wyrażeniach dłuższych niż 3 znaki. |
|
|
|
spenalzo Opis jak zrobić wyszukiwarkę z wyświetlaniem trafności 22.08.2003, 20:30:56
Wankster WOW! Dzięki spenalzo! Dzięki bardzo! 23.08.2003, 01:54:07
Marusz Haha, najbardziej podobał mi się pierwszy post po ... 23.08.2003, 14:10:52
wojto spenalzo dzieki za ta wyszukiwarke, kiedys probowa... 23.08.2003, 14:38:59
spenalzo CytatHaha, najbardziej podobał mi się pierwszy pos... 26.08.2003, 21:39:21
sivyer Artykul "Using MySQL Full-text Searching" dostępny... 27.08.2003, 08:01:52
Mnichasso A można by tak dać opis wyszukiwarki szukającej w ... 27.08.2003, 20:51:53
spenalzo CytatA można by tak dać opis wyszukiwarki szukając... 27.08.2003, 21:55:25
Mnichasso a dało by sie zrobić wyszukiwarke na mysql która b... 29.08.2003, 09:09:51
spenalzo Cytata dało by sie zrobić wyszukiwarke na mysql kt... 29.08.2003, 13:27:43
msulik Może coś zrobiłem nie tak, ale mnie się to nie pod... 29.08.2003, 21:47:29
orson optymalizacja przedstawionej funkcji ... 1.09.2003, 17:34:52 ![]() ![]() |
|
Aktualny czas: 21.12.2025 - 18:42 |