Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Zaawansowane sortowanie wyników
Forum PHP.pl > Forum > Przedszkole
basstone
Problem jest taki, że mam wyszukiwarkę, która pobiera z bazy wyniki przez zapytanie:

  1. $zapytanie = "SELECT `id`, `nazwa`, `url`, `opis` FROM `strony` WHERE MATCH(hasla,opis,nazwa) AGAINST('".htmlspecialchars($_POST['szukaj'])."')";


czyli pobiera sobie wyniki dopasowując wpisywaną frazę do haseł, opisu i nazwy strony. Chciałbym jednak bardziej rozbudować wyszukiwanie, tak żeby zrobić coś a'la google page rank, tylko zastanawiam się w jaki sposób zrobić taki manewr, żeby page rank nie był głównym argumentem dla sortowania wyników, tylko miał na niego wpływ w iluś określonych procentach. Ktoś z Was spotkał się już z czymś takim?
Crozin
  1. SELECT ..., MATCH (...) AGAINST (...) AS score, page_rank FROM ... ORDER BY (0.8 * score + 0.2 * page_rank) DESC ...
Oczywiście zapewne nijak ma się to do mechanizmu używanego przez Google, a wartość page_rank powinna być tak dobrana by nie wypływa znacząco na sam wynik.
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.