Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Wyszukiwarka w sklepie - frazy podobne
denis95x
post
Post #1





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 21.02.2015
Skąd: Bielsko-Biała

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


Cześć!

nie mam pomysłu na udoskonalenie wyszukiwarki w sklepie www.

Problem jest taki, aby wyszukiwała w podobnych frazach w MYSQL.

np. (tak dla przykładu):
1. jeśli ktoś wpisze "piłki" -> to żeby pokazało wszystko co ma w nazwie piłka, piłeczka
2. jeśli ktoś wpisze "brelok" -> ... w nazwie brelok, breloczek
3. jeśli ktoś wpisze "długopisy" -> ... w nazwie długopis

Jest jakiś sposób na to? Ktoś jakiś pomysł ? Jakikolwiek ? (IMG:style_emoticons/default/smile.gif)


Ten post edytował denis95x 8.05.2019, 08:20:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Elasicsearch. Sam mysql się nie nadaje do tego.
Go to the top of the page
+Quote Post
denis95x
post
Post #3





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 21.02.2015
Skąd: Bielsko-Biała

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


Nie ma prostszego rozwiązania? (IMG:style_emoticons/default/biggrin.gif)

Jakoś porównywać frazę? Zbudować własny słownik?
Go to the top of the page
+Quote Post
Pyton_000
post
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


tak, jeśli zbudujesz słownik to tak. ale musiałbyś stowrzuć tabelę która będzie miała połączenia slów każdy z każdym np:

dom => domek, domeczek, domunio (3 wiersze w tabeli)
domek => dom, domeczek, domunio (kolejne 3)

itd.

levenstein i sounds like w mysql nie sprawdzają się dla polskiego a przynajmniej nie w tym przypadku.
Go to the top of the page
+Quote Post
denis95x
post
Post #5





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 21.02.2015
Skąd: Bielsko-Biała

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


Ok, to ja już zrobię sobie taki słownik - jak to potem połączyć z tabelą produktów ?

Aby wyszukiwało po danych słowach ?

Widzę to tak:

Ktoś wpisuje: "breloczek"
w słowniku sprawdza i dopasowuje słowa "brelok" i "breloczek"

Jak to połączyć teraz aby z tabeli products wyświetliło rekordy gdzie w nazwie znajdują się te slowa.

Coś takiego?
  1. products.nazwa LIKE '$slowo_ze_slownika%'


Ten post edytował denis95x 8.05.2019, 09:26:00
Go to the top of the page
+Quote Post
Pyton_000
post
Post #6





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


możesz zrobić tak że przy zapisywaniu produktu w oddzielnej tabeli zrobić połączenie product_id - word_id
i wtedy przy wyszukiwaniu sprawdzać słowa zrobić join i masz produkty (IMG:style_emoticons/default/smile.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: 20.09.2025 - 20:27