правильнее держать данные авторизации в отдельных полях, вот и создайте их пусть хоть и дублируют частично сериализованные данные профиля. Не нужно создавать себе трудности чтобы потом их героически преодолевать.
Понимаете, пс не ищет так, как вы предполагаете.
Я дал вам пример популярного поискового движка написанного на Php почитайте как он устроен, как формирует поисковый индекс, как выглядит поисковый индекс и проч. Пока же вы пытаетесь построить деревянный небоскрёб и просите чтобы вам с этим помогли.
Потому что фильтр находится внутри определенной категории. А с главной страницы или тестовой неплохо бы тоже как то искать, потому что это фильтр будет еще и по новостям и по текстовым страницам
А вообще я исполнитель проекта, так что не мне это надо.
С этого и надо было начинать.
На самом деле, поиск по новостям или статьям в корне отличается от поиска по объектам недвижимости и к примеру, поиска автомобилей.
Вы привели пример конкретный по недвижимости, вам конкретно обосновали почему для данного типа контента использование полнотекстового поиска нецелесообразно.
Реализация же универсального поискового движка у вас будет очень увлекательным занятияем, потому что будете писать маленьки яндекс.
Через недели мытарств вы прийдете к тому, что ваша система не сможет формировать нормальные индексы на основе БД и вам придётся либо скармливать ей веб-страницы целиком (некоторые вполне способны их кушать, а не способны, так можно отдать контент и из базы), либо формировать отдельные запросы к бд для каждого типа контента (объявления, статьи, новости) чтобы сформировать нормальные индексы (почему, надеюсь, понятно).
На последнем варианте реализации вы, скорее всего и остановитесь, на базе Zend_Search_Lucene или Sphinx
Что вы привязались именно к сфинксу то?
Есть и php-реализации поисковых движков.
Zend_Lucene возьмите. Это php-реализация проекта Apache Lucene project. Вероятно получится обойти ограничения хостинга связанные с установкой Sphinx и ему подобных демонов на сервер хостера.
Изучите как работает и пишите свой велосипед если так хочется.
TroL пишет:
Но можно же искать и по корню
(Добавление)
А как сделать поиск слова из массива с возможностью ошибки в слове
например поровнять слова квАртира и квОртира и квартирИа.
Возможно в процессе изучения кода поймете, почему ваши поиски по массивам и т.п. верхушка айсберга подобных систем.
Хоть и конкретно для вашей задачи мне совершенно непонятна необходимость городить огород если поиск по фильтрам уже реализован.
Строго говоря, чтобы отобразить релевантные результаты по запросу "1 комнатная квартира в новокузнецке", ваша база данных должна содержать следиующие данные по объектам:
1. Тип недвижимости (квартира)
2. Количество комнат (1)
3. Геозона (Новокузнецк)
4. Тип сделки (снять, купить, сдать и проч.)
Далее путём выбора фильтров или ввода текста для поиска (первый вариант удобнее и для пользователя и для разработчика) формируете запрос к вашей пс. Если все же будете использовать текстовое поле вместо фильтров, то применение Sphinxa (которого вам порекомендовал Lime) и аналогов будет целесообразным. В этом случае нужно будет правильно настроить индексы и скормить сфинксу базу, чтобы индексы содержали приближенные к поисковым фразам значения. Также потребуется тонко настроить синонимы в файле конфигурации.
Если же поиск недвижимости ведётся по фильтрам (а он и должен таким быть), то можно обойтись sql-запросом к базе данных (пример — http://realty[dot]sarbc[dot]ru )
Зачем гадать на кофейной гуще. Если не получается выявить в чем проблема в ходе анализа кода, то сделайте простое логирование в файл и посмотрите что и при каких условиях не так работает как вы ожидаете.
С такими явными ошибками нет, а вот с утечками памяти к примеру очень помогает такой подход
Исходный код в чем сложность посмотреть?
В апи яндекс-карт это называевается, если мне изменяет мой склероз, обратным геокодингом.
Вот нашёл как делал это на апи 2.0 яндекс-карт тут http://realty[dot]sarbc[dot]ru/cabinet/items/add/ :
ymaps.geocode($("#obj-search").val(),{ results:1, boundedBy: myMap.getBounds(), strictBounds:'true'}).then(function(res){// Обрабатываем результат
Где $("#obj-search").val() — строка по которой ищем.
Полюбому можно и рациональнее, ибо есть методы в апи для получения координат найденной точки, чтобы не дёргать свойства объекта и т.п. Это всё найдете при раскурке доков.