Пользовательский интерфейс в Dreamweaver и более поздних версиях стал проще. В результате этого некоторые функции, описанные в этой статье, могут отсутствовать в Dreamweaver и более поздних версиях. Дополнительные сведения см. в этой статье.
О динамических источниках содержимого
Источник динамического контента — это хранилище информации, из которого можно извлечь и отобразить динамический контент для использования на веб-странице. К источникам динамического контента относится не только информация, хранящаяся в базе данных, но и значения, переданные HTML-формами, значения, содержащиеся в объектах сервера, и другие источники контента.
Dreamweaver позволяет легко подключиться к базе данных и создать набор записей, из которого можно извлечь динамический контент. Набор записей представляет собой результат запроса к базе данных. Он извлекает конкретную информацию, которую вы запрашиваете, и позволяет отобразить эту информацию на указанной странице. Вы определяете набор записей на основе информации, содержащейся в базе данных, и контента, который хотите отобразить.
Различные поставщики технологий могут использовать разную терминологию для набора записей. В ASP и ColdFusion набор записей определяется как запрос. Если вы используете другие источники данных, такие как пользовательский ввод или серверные переменные, название источника данных, которое определено в Dreamweaver, совпадает с названием самого источника данных.
Динамические веб-сайты требуют источника данных, из которого можно извлечь и отобразить динамический контент. Dreamweaver позволяет вам использовать базы данных, переменные запроса, переменные URL, серверные переменные, переменные форм, хранимые процедуры и другие источники динамического контента. В зависимости от источника данных вы можете либо извлечь новый контент для обработки запроса, либо изменить страницу в соответствии с потребностями пользователей.
Любой источник контента, который вы определяете в Dreamweaver, добавляется в список источников контента на панели «Привязки». Затем вы можете вставить источник контента на выбранную страницу.
О наборах записей
Веб-страницы не могут напрямую получить доступ к данным, хранящимся в базе данных. Вместо этого они взаимодействуют с набором записей. Набор записей — это подмножество информации (записей), извлеченное из базы данных с помощью запроса к базе данных. Запрос — это оператор поиска, предназначенный для поиска и извлечения конкретной информации из базы данных.
При использовании базы данных в качестве источника контента для динамической веб-страницы, необходимо сначала создать набор записей для хранения извлекаемых данных.Наборы записей служат посредником между базой данных, хранящей контент, и сервером приложений, генерирующим страницу. Наборы записей временно хранятся в памяти сервера приложений для более быстрого извлечения данных. Сервер удаляет набор записей, когда он больше не нужен.
Запрос может создать набор записей, который включает только определенные столбцы, только определенные записи или их комбинацию. Набор записей также может включать все записи и столбцы таблицы базы данных. Однако, поскольку приложениям редко требуется использовать каждый фрагмент данных в базе данных, вам следует стремиться делать наборы записей как можно меньше. Поскольку веб-сервер временно держит набор записей в памяти, использование меньшего набора записей расходует меньше памяти и потенциально может улучшить производительность сервера.
Запросы к базе данных записываются на языке структурированных запросов SQL (произносится как «sequel») — простом языке, который позволяет извлекать, добавлять и удалять данные из базы данных.Конструктор SQL, включенный в состав Dreamweaver, позволяет создавать простые запросы без необходимости понимать SQL. Однако если вы хотите создавать сложные SQL-запросы, базовые знания этого языка позволят вам создавать более продвинутые запросы и обеспечат большую гибкость при создании динамических страниц.
Перед определением набора записей для использования с Dreamweaver необходимо создать соединение с базой данных и, если данные еще отсутствуют, ввести их в базу данных.Если вы еще не определили соединение с базой данных для вашего сайта, обратитесь к главе о соединении с базой данных для серверной технологии, для которой ведется разработка, и следуйте инструкциям по созданию соединения с базой данных.
О параметрах URL-адресов и форм
Параметры URL сохраняют полученную информацию, введенную пользователями. Чтобы определить параметр URL, создайте форму или гипертекстовую ссылку, которая использует метод GET для отправки данных. Эта информация добавляется к URL запрашиваемой страницы и передается на сервер. При использовании переменных URL строка запроса содержит одну или несколько пар имя-значение, связанных с полями формы. Эти пары «имя-значение» присоединяются к URL-адресу.
Параметры формы сохраняют полученную информацию, которая включается в HTTP-запрос веб-страницы. Если вы создаете форму, которая использует метод POST, данные, отправленные формой, передаются на сервер. Перед началом работы убедитесь, что вы передаете параметр формы на сервер.
О переменных сеанса
Переменные сеанса позволяют сохранять и отображать информацию, которая хранится в течение визита пользователя (или сеанса).Сервер создает отдельный объект сеанса для каждого пользователя и поддерживает его в течение установленного периода времени или до его явного завершения.
Поскольку переменные сеанса существуют в течение всего сеанса пользователя и сохраняются при переходе пользователя со страницы на страницу внутри веб-сайта, они идеально подходят для хранения пользовательских предпочтений. Переменные сеанса также могут использоваться для вставки значения в HTML-код страницы, присвоения значения локальной переменной или предоставления значения для оценки условного выражения.
Перед определением переменных сеанса для страницы необходимо создать их в исходном коде. После создания переменной сеанса в исходном коде веб-приложения вы можете использовать Dreamweaver для получения ее значения и использования его на веб-странице.
Принцип работы переменных сеанса
Переменные сеанса сохраняют информацию (обычно параметры формы или URL, отправленные пользователями) и делают ее доступной для всех страниц веб-приложения на протяжении визита пользователя. Например, когда пользователи входят на веб-портал, который предоставляет доступ к электронной почте, котировкам акций, сводкам погоды и ежедневным новостям, веб-приложение сохраняет информацию для входа в переменной сеанса, которая идентифицирует пользователя на всех страницах сайта. Это позволяет пользователю видеть только те типы контента, которые он выбрал, при навигации по сайту. Переменные сеанса также могут обеспечивать механизм безопасности, завершая сеанс пользователя, если учетная запись остается неактивной в течение определенного периода времени. Это также освобождает память сервера и ресурсы обработки, если пользователь забывает выйти с веб-сайта.
Переменные сеанса хранят информацию, пока сеанс активен. Сеанс начинается, когда пользователь открывает страницу в приложении, и заканчивается, когда пользователь не открывает другую страницу в приложении в течение определенного периода времени или когда пользователь явно завершает сеанс (обычно нажимая ссылку «выход»). Пока он существует, сеанс относится к конкретному пользователю, и каждый пользователь имеет отдельный сеанс.
Используйте переменные сеанса для хранения информации, к которой может получить доступ каждая страница веб-приложения. Информация может быть самой разнообразной — имя пользователя, предпочтительный кегль или флаг, указывающий, успешно ли пользователь вошел в систему. Другое распространенное использование переменных сеанса — ведение текущего подсчета, например количества вопросов, на которые пока правильно ответили в онлайн-викторине, или товаров, которые пользователь пока выбрал из онлайн-каталога.
Переменные сеанса могут функционировать только в том случае, если браузер пользователя настроен на прием файлов cookie. Сервер создает номер идентификатора сеанса, который уникально идентифицирует пользователя при первом запуске сеанса, а затем отправляет файл cookie с номером идентификатора в браузер пользователя.Когда пользователь запрашивает другую страницу на сервере, сервер считывает файл cookie в браузере для идентификации пользователя и извлечения переменных сеанса пользователя, хранящихся в памяти сервера.
Сбор, хранение и извлечение информации в переменных сеанса
Перед созданием переменной сеанса необходимо сначала получить информацию, которую требуется сохранить, а затем отправить ее на сервер для хранения. Можно собирать и отправлять информацию на сервер с помощью HTML-форм или гипертекстовых ссылок, содержащих параметры URL. Также можно получать информацию из файлов cookie, хранящихся на компьютере пользователя, из заголовков HTTP, отправленных браузером пользователя с запросом страницы, или из базы данных.
Типичным примером хранения параметров URL в переменных сеанса является каталог товаров, использующий жестко закодированные параметры URL, созданные с помощью ссылки для отправки информации о товаре обратно на сервер для хранения в переменной сеанса. Когда пользователь нажимает ссылку «Добавить в корзину», идентификатор товара сохраняется в переменной сеанса, пока пользователь продолжает делать покупки. Когда пользователь переходит на страницу оформления заказа, извлекается идентификатор товара, хранящийся в переменной сеанса.
Опрос на основе формы является типичным примером страницы, которая сохраняет параметры формы в переменных сеанса. Форма отправляет выбранную информацию обратно на сервер, где страница приложения оценивает опрос и сохраняет ответы в переменной сеанса для передачи приложению, которое может подсчитать ответы, полученные от участников опроса. Или информация может быть сохранена в базе данных для последующего использования.
После отправки информации на сервер вы сохраняете ее в переменных сеанса, добавляя соответствующий код для вашей серверной модели на страницу, указанную в URL или параметре формы. Эта страница, называемая страницей назначения, указывается либо в атрибуте action HTML-формы, либо в атрибуте href гипертекстовой ссылки на начальной странице.
После сохранения значения в переменной сеанса можно использовать Dreamweaver для извлечения значения из переменных сеанса и использования его в веб-приложении. После определения переменной сеанса в Dreamweaver можно вставить ее значение на страницу.
При этом используется следующий HTML-синтаксис.
<form action="destination.html" method="get" name="myform"> </form>
<param name="href"value="destination.html">
И серверная технология, и метод, используемый для получения информации, определяют код, используемый для хранения информации в переменной сеанса. Базовый синтаксис для каждой серверной технологии выглядит следующим образом:
ColdFusion
<CFSET session.variable_name = value>
ASP
<% Session("variable_name") = value %>
Выражение value обычно представляет собой серверное выражение, например Request.Form("lastname"). Например, если вы используете параметр URL с именем product (или HTML-форму с методом GET и текстовое поле с именем product) для сбора информации, следующие операторы сохраняют информацию в переменной сеанса с именем prodID:
ColdFusion
<CFSET session.prodID = url.product>
ASP
<% Session("prodID") = Request.QueryString("product") %>
Если вы используете HTML-форму с методом post и текстовое поле с именем txtProduct для сбора информации, то следующие операторы сохраняют информацию в переменной сеанса:
ColdFusion
<CFSET session.prodID = form.txtProduct>
ASP
<% Session("prodID") = Request.Form("txtProduct") %>
Пример информации, сохраненной в переменных сеанса
Вы работаете над сайтом с большой аудиторией пожилых людей. В Dreamweaver добавьте две ссылки на экран приветствия, которые позволят пользователям настроить размер текста сайта. Для получения крупного, удобночитаемого текста пользователь нажимает одну ссылку, а для получения текста обычного размера пользователь нажимает другую ссылку.
Каждая ссылка имеет параметр URL с названием fontsize, который отправляет текстовые предпочтения пользователя на сервер, как показано в следующем примере Adobe ColdFusion®:
<a href="resort.cfm?fontsize=large">Увеличенный текст</a><br>
<a href="resort.cfm?fontsize=small">Обычный текст</a>
Сохраните текстовые предпочтения пользователя в переменной сеанса и используйте ее для установки размера шрифта на каждой странице, запрашиваемой пользователем.
В верхней части страницы назначения введите следующий код для создания сеанса с названием font_pref, который сохраняет предпочтения пользователя по размеру шрифта.
ColdFusion
<CFSET session.font_pref = url.fontsize>
ASP
<% Session("font_pref") = Request.QueryString("fontsize") %>
Когда пользователь нажимает гипертекстовую ссылку, страница отправляет текстовые предпочтения пользователя в параметре URL на страницу назначения. Код на странице назначения сохраняет параметр URL в переменной сеанса font_pref. В течение сеанса пользователя все страницы приложения получают это значение и отображают выбранный размер шрифта.
Переменные приложения ASP и ColdFusion
В ASP и ColdFusion вы можете использовать переменные приложения для сохранения и отображения информации, которая поддерживается в течение жизненного цикла приложения и сохраняется от пользователя к пользователю. Жизненный цикл приложения длится с момента, когда первый пользователь запрашивает страницу в приложении, до момента остановки веб-сервера. (Приложение определяется как все файлы в виртуальной папке и ее подпапках.)
Поскольку переменные приложения существуют в течение всего времени работы приложения и сохраняются от пользователя к пользователю, они идеально подходят для хранения информации, которая должна существовать для всех пользователей, например текущие время и дата.Значение переменной приложения определяется в коде приложения.
Серверные переменные ASP
Вы можете определить следующие переменные сервера ASP в качестве источников динамического контента: Request.Cookie, Request.QueryString, Request.Form, Request.ServerVariables и Request.ClientCertificates.
Серверные переменные ColdFusion
Можно определить следующие серверные переменные ColdFusion:
Клиентские переменные
Связывают данные с конкретным клиентом. Клиентские переменные поддерживают состояние приложения при переходе пользователя со страницы на страницу в приложении, а также от сеанса к сеансу.«Поддержание состояния» означает сохранение информации с одной страницы (или сеанса) на следующую, чтобы приложение запоминало пользователя и его предыдущие выборы и предпочтения.
Переменные Cookie
Cookie-переменные доступа, передаваемые серверу браузером
Переменные CGI
Предоставляет информацию о сервере, на котором работает ColdFusion, браузере, запрашивающем страницу, и другую информацию о среде обработки.
Серверные переменные
Доступны всем клиентам и приложениям на сервере. Они сохраняются до остановки сервера.
Локальные переменные
Создаются с помощью тега CFSET или тега CFPARAM на странице ColdFusion.
Создание красивых веб-сайтов в Dreamweaver
Создавайте дизайн, пишите код и управляйте динамическими веб-сайтами с помощью многофункционального инструмента.