За последние 24 часа нас посетили 22511 программистов и 998 роботов. Сейчас ищут 677 программистов ...

Полнотекстовый поиск из БД

Тема в разделе "PHP Free-Lance", создана пользователем VladimirEIS, 21 апр 2020.

  1. VladimirEIS

    VladimirEIS Новичок

    С нами с:
    21 апр 2020
    Сообщения:
    13
    Симпатии:
    0
    Добрый день.

    Нужен полнотекстовый поиск по базе данных mysql и выводом строк содержащих поисковый запрос.

    Т.е. вставить на страничку форму запроса ПОИСК с кнопкой НАЙТИ и при нажатии этой кнопки в таблицу на этой же странице должный выводиться строки с содержащимися даннми которые вводились в поле ПОИСК..

    Так работает, например в вордпрессе такие плагины как Ninja tables и TablePress.

    Алгоритм запроса:


    Например в базе данных есть две строки:
    1. Лампочка 12Вт дневной свет 20руб
    2. Лампочка 15Вт дневной свет 30руб

    Если вводим в поисковую строку:
    Лампочка - выдает обе строки
    Лампочка 12 - выдает только первую строку
    Лампочка дневной свет - выдает обестроки
    Дневной свет - выдает обе строки
    30руб - выдает только вторую строку.

    Это для понимания задачи.

    Сколько будет стоить такая работа?

    Ну и желательно чрез PHP PDO.

    База примерно 10-12 столбцов.

    Строки буду добавлять каждый день. Это вроде каталога товаров.
     
  2. vavprog

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

    С нами с:
    5 фев 2019
    Сообщения:
    12
    Симпатии:
    4
    эластик не проще прикрутить чем извращатся ?
     
  3. VladimirEIS

    VladimirEIS Новичок

    С нами с:
    21 апр 2020
    Сообщения:
    13
    Симпатии:
    0
    А что это такое. И в чем разница?
     
  4. neverlose

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

    С нами с:
    27 авг 2008
    Сообщения:
    1.112
    Симпатии:
    20
    @VladimirEIS
    Привет. Отвечу за vavprog.
    ElasticSearch - это инструмент, индексер, с гибкими настройками, специально для полнотекстового поиска. Его использование даст возможность гибко настроить поиск под ваши нужды, но усложнить процесс реализации. В нём поддерживается, такой механизм как ошибка набора, например, если вы сделали опечатку в поисковом запросе, а результат всё равно нашёлся.

    Если делать просто на базе данных mysql, то поиск в нём особо не настраивается, но судя по вашим требованиям, такое сделать можно, используя режим IN BOOLEAN MODE. Это упростит разработку, т.к. не нужно прикручивать сторонний инструмент.

    Сложности добавить поисковую форму и написать один запрос я особой не вижу.

    По этому оцениваю работу в один час. Но как правило могут вылезти моменты, подводные камни, которые не описаны в ТЗ и тогда время разработки может значительно измениться, по этому отправил я сразу итоговую стоимость работы вам в ЛС, но может нам повезёт и всё будет действительно просто и вам, соответственно, дешевле.