Поиск с помощью PHP - PullRequest
       29

Поиск с помощью PHP

1 голос
/ 18 мая 2010

Я хочу добавить функцию поиска в центре внимания - результаты поиска отображаются с богатым содержимым, таким как миниатюры и т. Д., В раскрывающемся меню, которое изменяется при каждом событии keyup - так же, как при поиске apple.com - на сайт, содержащий данные в MySQL InnoDB столы. Таким образом, в основном это отображение результатов поиска на основе части запроса, которая уже была введена (поэтому не автозаполнение).

Данные разбиты на отдельные таблицы для категорий, страниц справки, страниц блога и т. Д. Сценарий поиска должен учитывать только подмножество столбцов.

Поскольку это, по-видимому, популярное требование, я полагаю, что существует несколько проектов поисковой системы PHP (желательно с открытым исходным кодом и поддержкой memcached), которые можно интегрировать в существующую систему на основе регулярного экспорта соответствующих данных из рабочие дб / таблицы.

Есть ли какие-нибудь решения там? Какой из них вы бы порекомендовали? Или, может быть, лучше реализовать это наоборот?

Спасибо

Ответы [ 2 ]

2 голосов
/ 18 мая 2010

Это будет работа для AJAX. Проверьте реализацию JQuery по этому адресу: http://api.jquery.com/category/ajax/

Создайте скрипт PHP, который отображает ваши результаты, как будто кто-то их напечатал и нажал кнопку «поиск». Затем используйте ajax-вызов этих сценариев и замените innerHTML (или соответствующего HTML-тега)

Примерно так:

hello.php

<?php   echo "Hello World"; ?>

index.html

<html>
<head>
<script language="javascript">
  function update_results(){
    $.ajax({
     url: 'hello.php',
     success: function(data) {
       $('#results').html(data);
     }
    });
  }
</script>
</head>
<body>
  <label>Spotlight: <input id="q" type="text" onkeypress="update_results()" /></label>
  <div id="results"></div>
</body>
</html>

Где hello.php - страница, которую вы настраиваете со своими симпатичными результатами.

0 голосов
/ 29 марта 2011

Это именно то, что DBruns дал вам выше. Задача программирования сложной системы, подобной этой, заключается в создании собственного hello.php, который предоставляет результаты поиска с использованием адаптивного запроса, который может работать с несколькими таблицами.

...