2014-09-09 4 views
-2

Я работаю на сайте недвижимости и смог показать списки с сервера rets.Я использую phrets. Я не могу заставить поисковую систему работать исправно. Вот мой поисковый запрос:Невозможно сбить название города при написании нескольких букв при создании сайта недвижимости

$search = $rets->SearchQuery(
     'Property',  // Resource 
     1,  // Class 
     '((130=2013-10-02T16:00:00+),(213=A))', // DMQL 
     array(
      'Format' => 'COMPACT-DECODED', 
      'Select' => 'sysid,13,1491', 
      'Count'  => 1, 
      'Limit'  => 3 
      ) 
     ); 

130 = система даты последнего обновления.

213 = имя системы для статуса.

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

Но здесь, в моем случае, мое системное имя для города - 1491, и когда я пишу (1491 = somerset), он вытаскивает все списки в городе somerset. Мне интересно, как я могу сделать первый шаг при написании нескольких писем, покажу мне название городов, относящихся к этим письмам.

Как просьба DMQL предложить мне сделать так: (1491=*som*) он должен воспитывать все города, содержащие «сом». Но я не могу заставить его работать. За последние несколько дней я очень стараюсь, и с очень небольшим ресурсом в Интернете я не могу понять это.

Любая помощь будет очень признательна.

+0

http://stackoverflow.com/questions/17938394/cant-get-results-from-searchquery-in-phrets – ray

ответ

0

Попробуйте присвоить строку запроса. Плюс знаки часто не кодируются и, таким образом, игнорируются при обработке запроса. Вы можете также использовать маркер NOW и отправить его в качестве (130 = 2013-10-02T16: 00: 00-NOW), (213 = A)

0

RETS сама по себе действительно не предоставить вам путь к делайте это эффективно. Хотя могут быть сделаны и другие, более суровые способы сделать это, 2 основные из них будут следующими:

1) Загрузите метаданные с сервера, чтобы у вас были просмотры каждого поля в локальной базе данных, где вы могли бы сделать это больше динамические запросы.

2) Когда кто-то помещает в 3 буквы, попробуйте получить исходные данные для поля города и попытайтесь найти возможные совпадения непосредственно с PHP.

Из этих двух вариантов я бы настоятельно рекомендовал первый, поскольку он будет быстрее и более способным.

Как только ваш посетитель воспользовался предложением выбрать интересующий вас город, вы можете использовать это значение в своем поиске RETS, используя основное условие точного соответствия.

 Смежные вопросы

  • Нет связанных вопросов^_^