Пользовательский интерфейс в Dreamweaver и более поздних версиях стал проще. В результате этого некоторые функции, описанные в этой статье, могут отсутствовать в Dreamweaver и более поздних версиях. Дополнительные сведения см. в этой статье.
О страницах поиска и результатов поиска
Вы можете использовать Dreamweaver для создания набора страниц, позволяющих пользователям искать в вашей базе данных и просматривать результаты поиска.
В большинстве случаев для добавления этой функции в ваше веб-приложение требуется как минимум две страницы. Первая страница — это страница, содержащая HTML-форму, в которой пользователи вводят параметры поиска. Хотя эта страница фактически не выполняет поиск, она называется страницей поиска.
Вторая необходимая страница — это страница результатов, которая выполняет основную работу. На странице результатов выполняются следующие задачи.
Чтение параметров поиска, отправленных со страницы поиска
подключение к базе данных и поиск записей;
Создание набора записей с найденными записями
Отображение содержимого набора записей
При желании вы можете добавить страницу подробностей. Страница подробностей предоставляет пользователям дополнительную информацию о конкретной записи на странице результатов.
Если у вас только один параметр поиска, Dreamweaver позволяет добавить возможности поиска в ваше веб-приложение без использования SQL-запросов и переменных. Просто спроектируйте ваши страницы и заполните несколько диалоговых окон. Если у вас более одного параметра поиска, вам нужно написать SQL-инструкцию и определить несколько переменных для неё.
Dreamweaver вставляет SQL-запрос в вашу страницу. Когда страница выполняется на сервере, каждая запись в таблице базы данных проверяется. Если указанное поле в записи соответствует условиям вашего SQL-запроса, запись включается в набор записей. SQL-запрос фактически создаёт набор записей, содержащий только результаты поиска.
Например, полевые продавцы могут иметь информацию о клиентах в определённой области, у которых доходы выше определённого уровня. В форме на странице поиска торговый представитель вводит географическую область и минимальный уровень дохода, а затем нажимает кнопку «Отправить», чтобы передать два значения на сервер. На сервере значения передаются в SQL-инструкцию страницы результатов, которая затем создаёт набор записей, содержащий только клиентов в указанной области с доходами выше указанного уровня.
Создание страницы поиска
Страница поиска в вебе обычно содержит поля формы, в которые пользователь вводит параметры поиска. Как минимум ваша страница поиска должна иметь HTML-форму с кнопкой «Отправить».
Чтобы добавить HTML-форму на страницу поиска, выполните следующую процедуру.
На странице создается пустая форма. Возможно, потребуется включить «Невидимые элементы» («Вид» > «Визуальные вспомогательные элементы» > «Невидимые элементы»), чтобы увидеть границы формы, которые представлены тонкими красными линиями.
Объекты формы включают текстовые поля, меню, параметры и радиокнопки.Вы можете добавить столько объектов формы, сколько хотите, чтобы помочь пользователям уточнить поиск.Однако имейте в виду, что чем больше параметров поиска на странице поиска, тем сложнее будет ваш SQL-запрос.
Затем вы укажете форме, куда отправлять параметры поиска, когда пользователь нажмет кнопку «Отправить».
GET отправляет данные формы, добавляя их к URL в виде строки запроса. Поскольку URL ограничены 8192 символами, не используйте метод GET с длинными формами.
POST отправляет данные формы в теле сообщения.
Default использует стандартный метод браузера (обычно GET).
Страница поиска готова.
Создание базовой страницы результатов
Когда пользователь нажимает кнопку «Поиск» формы, параметры поиска отправляются на страницу результатов на сервере. Страница результатов на сервере, а не страница поиска в браузере, отвечает за извлечение записей из базы данных. Если страница поиска отправляет на сервер один параметр поиска, вы можете создать страницу результатов без SQL-запросов и переменных. Вы cоздаете базовый набор записей с фильтром, который исключает записи, не соответствующие параметру поиска, отправленному страницей поиска.
Если у вас есть несколько условий поиска, необходимо использовать расширенное диалоговое окно «Набор записей» для определения набора записей (см. Создание расширенной страницы результатов ).
Создайте набор записей для хранения результатов поиска
Если у вас еще нет страницы результатов, cоздайте пустую динамическую страницу («Файл» > «Новый» > «Пустая страница»).
Если вместо этого появляется расширенное диалоговое окно, переключитесь на простое диалоговое окно, нажав кнопку «Простой».
Подключение должно быть к базе данных, содержащей данные, которые пользователь хочет найти.
При поиске по одному параметру вы можете искать записи только в одной таблице. Для поиска в нескольких таблицах одновременно необходимо использовать расширенное диалоговое окно «Набор записей» и создать SQL-запрос.
Включайте только столбцы, содержащие информацию, которую нужно отобразить на странице результатов.
Пока не закрывайте диалоговое окно «Набор записей».Далее вы используете его для получения параметров, отправленных страницей поиска, и создания фильтра набора записей для исключения записей, которые не соответствуют параметрам.
Создание фильтра набора записей
Например, если значение, отправляемое страницей поиска, — это название города, выберите столбец в таблице, содержащий названия городов.
Страница поиска использует переменную формы или параметр URL для передачи информации на страницу результатов.
Имя объекта также служит именем переменной формы или параметра URL.Чтобы получить имя, переключитесь на страницу поиска, нажмите объект формы, чтобы выбрать его, и проверьте имя объекта в инспекторе свойств.
Например, предположим, что нужно создать набор записей, включающий только приключенческие поездки в определенную страну.Предположим, в таблице имеется столбец с именем TRIPLOCATION. Также предположим, что HTML-форма на странице поиска использует метод GET и содержит объект меню под названием Location, отображающий список стран.В следующем примере показано, как должен выглядеть раздел «Фильтр»:
Тестовое значение имитирует значение, которое иначе было бы возвращено со страницы поиска.Нажмите «ОК», чтобы закрыть тестовый набор записей.
На страницу вставляется серверный сценарий, который проверяет каждую запись в таблице базы данных при выполнении на сервере.Если указанное поле в записи соответствует условию фильтрации, запись включается в набор записей.Сценарий создает набор записей, содержащий только результаты поиска.
Следующий шаг — отобразить набор записей на странице результатов.Дополнительную информацию см. в разделе Отображение результатов поиска.
Создание дополнительной страницы результатов
Если страница поиска отправляет на сервер более одного параметра поиска, необходимо написать SQL-запрос для страницы результатов и использовать параметры поиска в переменных SQL.
Если у вас есть только одно условие поиска, вы можете использовать простое диалоговое окно Recordset для определения набора записей (см. Создание базовой страницы результатов ).
В расширенном диалоговом окне имеется текстовая область для ввода SQL-инструкций. Если вместо этого появляется простое диалоговое окно, переключитесь на расширенное диалоговое окно, нажав кнопку Advanced.
Соединение должно быть с базой данных, содержащей данные, которые пользователь будет искать.
Убедитесь, что оператор включает предложение WHERE с переменными для хранения параметров поиска.В следующем примере переменные называются varLastName и varDept:
SELECT EMPLOYEEID, FIRSTNAME, LASTNAME, DEPARTMENT, EXTENSION FROM EMPLOYEE ¬
WHERE LASTNAME LIKE 'varLastName' ¬
AND DEPARTMENT LIKE 'varDept'
Чтобы уменьшить количество вводимого текста, вы можете использовать дерево элементов базы данных в нижней части расширенного диалогового окна Recordset. Инструкции см. в разделе Определение расширенного набора записей путем написания SQL.
Справку по синтаксису SQL см. в учебнике SQL по адресу www.adobe.com/go/learn_dw_sqlprimer.
В следующем примере ASP HTML-форма на странице поиска использует метод GET и содержит одно текстовое поле с именем LastName и другое с именем Department:
В ColdFusion значениями времени выполнения будут #LastName# и #Department#. В PHP значения времени выполнения будут равны $_REQUEST["LastName"] и $_REQUEST["Department"].
Значения по умолчанию имитируют значения, которые в противном случае были бы возвращены со страницы поиска. Нажмите «ОК», чтобы закрыть тестовый набор записей.
Запрос SQL вставляется на вашу страницу.
Следующий шаг — отобразить набор записей на странице результатов.
Отображение результатов поиска
После создания набора записей для хранения результатов поиска необходимо отобразить информацию на странице результатов. Отображение записей может быть простым делом перетаскивания отдельных столбцов из панели «Привязки» на страницу результатов. Можно добавить навигационные ссылки для перемещения вперед и назад по набору записей или создать повторяющуюся область для отображения нескольких записей на странице. Можно также добавить ссылки на страницу сведений.
Дополнительную информацию о методах отображения динамического контента на странице, отличных от отображения результатов в динамической таблице, см. в разделе Отображение записей базы данных.
Создание страницы сведений для страницы результатов
Ваш набор страниц поиска и результатов может включать страницу сведений для отображения дополнительной информации о конкретных записях на странице результатов. В этой ситуации ваша страница результатов также выполняет функцию главной страницы в наборе страниц типа «главная-подчиненная».
Создание ссылки для открытия связанной страницы (ASP)
Вы можете создать ссылку, которая открывает связанную страницу и передает существующие параметры на эту страницу. Серверное поведение доступно только при использовании серверной модели ASP.
Перед добавлением серверного поведения «Перейти к связанной странице» на страницу убедитесь, что страница получает параметры формы или URL с другой страницы. Задача серверного поведения — передавать эти параметры на третью страницу. Например, вы можете передать параметры поиска, полученные страницей результатов, на другую страницу и избавить пользователя от повторного ввода параметров поиска.
Также вы можете выбрать текст или изображение на странице для использования в качестве ссылки на связанную страницу или установить указатель на страницу, ничего не выбирая, и текст ссылки будет вставлен.
Если текущая страница отправляет данные сама себе, введите имя файла текущей страницы.
При нажатии новой ссылки страница передает параметры на связанную страницу с использованием строки запроса.
Создание красивых веб-сайтов в Dreamweaver
Создавайте дизайн, пишите код и управляйте динамическими веб-сайтами с помощью многофункционального инструмента.