За последние 24 часа нас посетили 56864 программиста и 1791 робот. Сейчас ищет 841 программист ...

Не работает запрос.

Тема в разделе "MySQL", создана пользователем dr.xray, 28 дек 2008.

  1. dr.xray

    dr.xray Активный пользователь

    С нами с:
    23 дек 2008
    Сообщения:
    7
    Симпатии:
    0
    Доброго времени суток, господа.

    Прошу помощи в создании запроса.

    Есть таблица, в которой есть поле `header` тип 'longtext'

    Нужно выбрать из этого поля записи, содержащие слова, заданные в поиске. Количество слов в поисковой форме может быть произвольным, расположение - тоже.
    Догадываюсь, что для этого нужно пользовать explode(), но что дальше делать - не доходит.

    что-то типа:

    Код (Text):
    1.  
    2. <?php
    3. $search_array = explode(" ",$search_string);
    4. for ($i = 0; $i < sizeof($search_array); $i++) {
    5.       $query .= '`header` LIKE "%'+mysql_real_escape_string($search_array[$i])+'%" OR ';
    6.   }
    7.  
    8. $zapros = substr($query, 0, -3);
    9. $result_string=mysql_num_rows(mysql_query('SELECT * FROM `searchdata` WHERE '.$zapros));
    10. ?>
    Но... так не работает :( Ругается на mysql_num_rows()
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    .
     
  3. dr.xray

    dr.xray Активный пользователь

    С нами с:
    23 дек 2008
    Сообщения:
    7
    Симпатии:
    0
    Простите, не понял...
     
  4. GudGuy

    GudGuy Активный пользователь

    С нами с:
    14 июн 2007
    Сообщения:
    909
    Симпатии:
    0
    Адрес:
    Москва
    dr.xray
    что за "+"? читаем мануаль. о том как складываються строки.
    подсказка - "."
    ЗЫ неплохо бы выкладывать кодстроки;)
    ЗЗЫKreker
    я так понял что ты подчеркнул "+" но, выглядит так будто стоит знак+/-
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    GudGuy
    Просто + не бывает жирным)
     
  6. dr.xray

    dr.xray Активный пользователь

    С нами с:
    23 дек 2008
    Сообщения:
    7
    Симпатии:
    0
    Спасибо, понял. Ушел читать доки до красноты в глазах ;)
     
  7. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    нет желания переложить все на FULLTEXT и не мучаться?

    а то LIKE с OR это ж повеситься можно. Еще по longtext.

    бррррр
     
  8. dr.xray

    dr.xray Активный пользователь

    С нами с:
    23 дек 2008
    Сообщения:
    7
    Симпатии:
    0
    Объясните, пожалуйста, разницу?