Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyszukiwanie zaawansowane (coś jak na googlach)
pasTerzu
post
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 25.08.2005

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


Mam problem mianowicie potrzebuje zrobić wyszukiwanie w bazie danych gdzie znajdują się różne firmy np. ktoś chce sprawdzić czy jest rekord o nazwie "Urząd miasta opole" ale w bazie jest "urząd miasta opola" - user wpisuje w wyszukiwarce "opole" no i niestety nie znajduje nic - w jaki sposób można zabrać się do zrobienia takiej wyszukiwarki która była by w stanie podołać temu zadaniu (nie chce gotowych rozwiązań wszak jak ktoś ma to chętnie) będę wdzięczny za wskazówki. THX
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
php programmer
post
Post #2





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


Ja to widze tak:

1. Sprawdzasz najpierw, czy ilość wyników
standardowego zapytania jest mniejsza od ilości
krytycznej np musi być minimum trzy wyniki.

2. Jeśli jest mniej niż trzy wyniki to
dla każdego wyrazu sprawdzasz czy ma conajmniej
ileś tam liter np 7 liter (zazwyczaj wyrazy które podlegają
odmianie są dłuższe). Dla każdego wyrazu dłużego niż 7 liter
obcinasz końcówkę, powiedzmy 3 litery.

3. Wywołujesz ponownie zapytanie lecz z poucinanymi wyrazami

PS. Ewentualnie możesz dowiedzieć się
jakie końcówki występują najczęściej w odmienianych wyrazach
(ów, ego, nia, ci, ej, itd)
i w przypadku znalezienia popularnej końcówki
uciąć ją (o ile ta końcówka rzeczywiscie znajduje sie na końcu
a nie np w środku wyrazu)

Ten post edytował php programmer 14.07.2006, 13:14:23
Go to the top of the page
+Quote Post
pasTerzu
post
Post #3





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 25.08.2005

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


hmmm dzieki - a jakies inne moze pomysly ktos ma (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
Athlan
post
Post #4





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Jeżeli chodzi o bazę danych to zaytanie warunkowe
"WHERE costam LIKE %".$szukana fraza."%"
w zupełności powinno wystarczać
Go to the top of the page
+Quote Post
ergo
post
Post #5





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 8.03.2005

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


Cytat(Athlan @ 14.07.2006, 18:10 ) *
Jeżeli chodzi o bazę danych to zaytanie warunkowe
"WHERE costam LIKE %".$szukana fraza."%"
w zupełności powinno wystarczać


z tego gdzie wszedzie mozna poczytac to like zabijaja bazy w takiej postaci jak ty to napisales, ja bym sie rozejrzal za indeksowaniem pelnotekstowm i po sprawie.
Go to the top of the page
+Quote Post
pasTerzu
post
Post #6





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 25.08.2005

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


Cytat(Athlan @ 14.07.2006, 18:10 ) *
Jeżeli chodzi o bazę danych to zaytanie warunkowe
"WHERE costam LIKE %".$szukana fraza."%"
w zupełności powinno wystarczać


no bez jaj (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) nie po to pisałem temat zeby taka odp dostac (jak dla nooba) (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Będę bawił się tym indeksowaniem dzięki za podpowiedź. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


hmm a mozesz dokladniej opisac co masz na mysli ? mi zalezy na tym aby wyszukiwarka szukala odmiany wyrazow nawet (w bazie jest OPOLE a ktos wpisze OPOLA i znalezc powinien) da sie tak zrobic (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post

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: 22.08.2025 - 20:04