Шаг 171.
Библиотека jQuery. Интерактивные формы. Компактные формы. Функция автодополнения на основе технологии AJAX. На стороне сервера

    На этом шаге мы приведем текст PHP-сценария, формирующего массив совпадений.

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

<?php

if (strlen($_REQUEST['search-text']) < 1) {
  print '[]';
  exit;
}

$terms = array(
  'access',
  'action',
  'active',
  'administration',
  // Продолжение списка
  'wordpress',
  'workflow',
  'xaml',
  'xoops',
);

$possibilities = array();

foreach ($terms as $term) {
  if (strpos($term, strtolower($_REQUEST['search-text'])) === 0) {
    $possibilities[] = "'". str_replace("'", "\\'", $term) ."'";
  }
}

print ('['. implode(', ', $possibilities) .']');
?>

    Этот сценарий сравнивает полученную строку с началом каждого из возможных вариантов и составляет массив совпадений в формате JSON. Строковые операции, используемые здесь (такие как str_replace() и implode()), обеспечивают корректный вывод информации в формате JSON, чтобы избежать появления ошибок при синтаксическом анализе массива в JavaScript.

    На следующем шаге мы рассмотрим реализацию на стороне браузера.




Предыдущий шаг Содержание Следующий шаг