Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Więcej niż 1 wyraz w wyszukiwarce
LeNy
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


Witam. Mam problem z moją wyszukiwarką. Otóż gdy wpiszę w nią więcej niż 1 wyraz dla przykładu "test testu", to wyszukiwarka nie odnajduje żadnych rekordów mimo że w bazie są rekordy o nazwie i test i testu, natomiast jak wpisze pojedynczy tekst "test" albo "testu", to udaje jej się odnaleźć wymagane rekordy.
Oto moja funkcja dodająca % do każdego z wyrazów:
  1. function zapytanieSzukaj($text)
  2. {
  3. return('%' . str_replace(' ', '%', $text) . '%');
  4. }


A tak wygląda moje zapytanie:
  1. $likes = zapytanieSzukaj("test testu");
  2. "SELECT * FROM `NewsPhoto` WHERE `Tags` Like '$likes'"


Proszę o pomoc (IMG:style_emoticons/default/wstydnis.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Bo szukasz:

%test testu%

czyli wszystko co w "środku" będzie miało taką frazę zostanie znalezione

Musiałbyś rozbić słowa do tablicy, dodawać % i później połączyć z or like "innafraza"
Go to the top of the page
+Quote Post
Uriziel01
post
Post #3





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


Cytat(Fifi209 @ 17.03.2012, 10:06:19 ) *
Bo szukasz:

%test testu%

czyli wszystko co w "środku" będzie miało taką frazę zostanie znalezione

Musiałbyś rozbić słowa do tablicy, dodawać % i później połączyć z or like "innafraza"



Czytałeś ogólnie kod który podał @LeNy ?
  1. return('%' . str_replace(' ', '%', $text) . '%');


Ten post edytował Uriziel01 17.03.2012, 13:26:27
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.10.2025 - 12:48