Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Wyszukiwanie w bazie MySQL
Forum PHP.pl > Forum > Przedszkole
php__amator
Witam,

napotkalem pewien problem z ktorym do tej pory nie liczylem sie za bardzo ale nagle okazalo sie ze musze cos z tym zrobic, mianowicie zrobilem wyszukiwanie ktore dziala bardzo dobrze ale tylko jesli wpiszesz pierwsze litery nazwy, problem pojawil sie w chwili gdy nie do konca znana jest nazwa i trzeba uzyc @wildcardu/a@
Nie bardzo wiem jak w php co takiego zbudowac.
Rozwiazanie proste i ktorego obecnie uzywam wyglada tak:

  1.  
  2. $wh[] = "model LIKE '$model%'";
  3.  

Przyznaje sie bez bicia, nie wiem jak zbudowac cos co pozwoli mi na uzycie "wildcard". Czy nalezy zbudowac bardziej zlozony system wyszukiwania czy wystarczy cos dodac do istniejacego ?
HELP

pozdrawiam
phpamator
fiszol
  1. $wh[] = "model LIKE '%$model%'";
php_amator
I to już questionmark.gif?
  1.  
  2. $wh[] = "model LIKE '%$model%'";
  3.  


tylko dodatkowy znak % I wsio ? Super, nie spodziewałem się. Jeśli tak to działa to kapitalnie, dzięki.

Ale to chyba nie pozwala na wprowadzenie * jako zamiennika litery bądź cyfry ?
przetestowałem I jest jakby lepiej ale ..... smile.gif
Załóżmy, że mam potrzebę znalezienia wszystkiego z cyfrą 3 która znajduje się na trzecim miejscu czyli np 1A3
I chciałbym aby wyszukiwanie odbywało się tak jak zasadniczo w każdej innej wyszukiwarce czyli *costam.
Jest taka opcja w prosty sposób zrobić to w PHP ?



pozdrawiam
phpamator
fiszol
Imo dziwnie masz bazę danych zaprojektowaną skoro musisz ją w ten sposób przeszukiwać.

  1. SELECT * FROM tabela WHERE SUBSTRING(model, 3, 1 ) = 3
  1. $wh[] = " SUBSTRING(model, 3, 1 ) = 3";

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.