Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie
Forum PHP.pl > Forum > PHP
krzysiu99995
Witam, zrobiłem sobie małą wyszukiwarkę:

  1. $search = my_strtolower(htmlspecialchars($mybb->input['search']));
  2.  
  3.  
  4. $query = $db->query("
  5. SELECT fid, pid, name, lastpost, lastposter, lastposteruid, lastposttid, lastpostsubject
  6. FROM ".TABLE_PREFIX."forums
  7. WHERE type='f' AND name LIKE '$search'
  8. ORDER BY name DESC
  9.  
  10. ");


Jak w bazie jest np. name = Test.

I wpisze test, to jest ok. Ale jak jest już np name = Testowy test. To czy wpiszę w wyszukiwarkę 'testowy test', 'test lub 'Testowy', nie wyszuka nic. Z góry dzięki za pomoc.
CuteOne
1. rozbij string na części za pomocą explode (powstanie tablica)
2. tablicę przeleć pętlą
  1. $query = array();
  2. foreach($array as $value) {
  3. $query[] = " name LIKE '%".$value."%' ";
  4. }
  5. $query = '(' . implode(' OR ', $query) . ')';

3. $query wrzuć do zapytania w odpowiednie miejsce
krzysiu99995
Dzięki wielkie, mistrzu.
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.