Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Поиск по двум полям
Форумы портала PHP.SU » PHP » Программирование на PHP » Поиск по двум полям

Страниц (1): [1]
 

1. dmaw - 14 Апреля, 2010 - 13:22:50 - перейти к сообщению
Для поиска в базе использую запрос
PHP:
скопировать код в буфер обмена
  1. mysql_query("SELECT * FROM book WHERE text LIKE '%$zapros%'", $db);

проблема в том, что ищет только в одном поле, а как заставить чтобы искал в двух полях?
Пробовал так:
PHP:
скопировать код в буфер обмена
  1. mysql_query("SELECT * FROM book WHERE title OR text LIKE '%$zapros%'", $db);

всё равно ищет только в поле text, а title игнорируется.
(Добавление)
Вопрос решён)
PHP:
скопировать код в буфер обмена
  1. mysql_query("SELECT * FROM book WHERE title LIKE '%$zapros%' OR text LIKE '%$zapros%'", $db);
2. JustUserR - 15 Апреля, 2010 - 13:19:37 - перейти к сообщению
dmaw пишет:
Всё равно ищет только в поле text, а title игнорируется
Интересно а из какого языка (Запросов или программирования) вы решили что в рамках одного оператора проверки можно использовать несколько левых операндов Разумеется ваш пример трактовался как проверка первог операнда на непустоту (Хотя лучше использовать ISNULL) - а второго сверялся с LIKE

 

Powered by ExBB FM 1.0 RC1