Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie dla kilku słów
Forum PHP.pl > Forum > PHP
radmistrz2
Witam. Udoskonalam moją wyszukiwarkę mp3. Chcę, aby wyszukiwarka nie wyszukiwała tylko pojedynczych fraz tak jak tu:

wejście: feel siebie
wyjście:...feel siebue...

tylko

wejście:feel siebie
wyjście:feel siebie lub feel - pokonaj siebie

Coś kombinowałem wg wzoru ale nie wychodzi:

  1. <?php
  2. $tresc_zapytania = 'SELECT `id`, `post_date`, `post_title`, `link`, `size`, MATCH (post_title) AGAINST ('.addslashes($_GET['szukaj']).') AS score FROM `wp_posts` WHERE  MATCH (post_title) AGAINST ('.addslashes($_GET['szukaj']).') ORDER BY  MATCH (post_title) AGAINST ('.addslashes($_GET['szukaj']).') ORDER BY `id` desc LIMIT '.(($strona-1)*$wns).','.$wns;
  3. ?>
megawebmaster
Rozbij sobie wejście według spacji i szukaj kolejnych elementów tablicy w jedym zapytaniu z AND.
  1. <?php
  2. $wejscie = explode(' ',$wejscie);
  3. $tresc_zapytania = 'SELECT `id`, `post_date`, `post_title`, `link`, `size` FROM tabela WHERE `post_title` LIKE `%'.$wejscie[0].'%` AND WHERE `post_title` LIKE `%'.$wejscie[1].'%`';
  4. ?>


Nie wiem na ile jest to dobre rozwiązanie, ale działać powinno... Tylko nie wiem jak z wydajnością takiego rozwiązania. Tutaj łapki nie kładę, bo w SQLu nigdy nie byłem zbyt dobry winksmiley.jpg
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.