Примечание.

Пользовательский интерфейс в Dreamweaver СС и более поздних версиях стал проще. В результате этого некоторые функции, описанные в этой статье, могут отсутствовать в Dreamweaver CC и более поздних версиях. Дополнительные сведения см. в этой статье.

О заказных вариантах поведения сервера

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

Перед написанием собственного поведения сервера проверьте, нет ли на веб-сайте Dreamweaver Exchange сценария с нужными функциями для веб-сайта, созданного другим производителем. Часто другие разработчики уже создали и проверили поведение сервера, отвечающее вашим требованиям.

Доступ к Dreamweaver Exchange

  1. В Dreamweaver доступ к Dreamweaver Exchange можно получить одним из следующих способов.
    • Выберите «Справка» > «Dreamweaver Exchange».

    • Выберите меню «Окно» > «Поведение сервера», нажмите кнопку со знаком «плюс» (+) и выберите пункт «Дополнительное поведение сервера».

    В браузере откроется веб-страница Dreamweaver Exchange.

  2. Войдите в систему Exchange со своим Adobe ID; если у вас еще нет Dreamweaver Exchange ID, следуйте инструкциям, чтобы создать учетную запись Adobe.

Установка поведения сервера или другого расширения в Dreamweaver

  1. Запустите диспетчер расширений, выбрав «Команды» > «Управление расширениями».
  2. Выберите меню «Файл» > «Установить пакет» в диспетчере расширений.

    Дополнительные сведения см. в разделе Использование диспетчера расширений.

Работа с заказным поведением сервера

Опытный разработчик ColdFusion, JavaScript, VBScript или PHP может создавать собственные поведения сервера. Для создания поведения сервера необходимо выполнить следующее.

  • Напишите один или несколько блоков кода, выполняющих нужные действия.

  • Укажите, в каком месте HTML-кода страницы нужно вставить этот блок.

  • Если для поведения сервера необходимо указать значение параметра, создайте диалоговое окно с предложением указать соответствующее значение.

  • Протестируйте поведение сервера прежде, чем делать его доступной другим.

Использование построителя вариантов поведения сервера

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

  1. На панели «Поведение сервера» («Окно» > «Поведение сервера») нажмите кнопку со знаком «плюс» (+) и выберите «Создать поведение сервера».
  2. Во всплывающем меню «Тип документа» выберите тип документов, для которых разрабатывается поведение сервера.
  3. Введите имя поведения сервера в поле «Имя».
  4. Для копирования существующего поведения сервера и добавления его к создаваемому сценарию выберите пункт «Копировать существующее поведение сервера» и выберите необходимый сценарий во всплывающем меню (необязательно). Нажмите кнопку «ОК».

    Будет отображено диалоговое окно построителя вариантов поведения сервера.

  5. Чтобы добавить новый блок кода, нажмите кнопку со знаком «плюс» (+), введите имя блока и нажмите кнопку «ОК».

    Введенное имя указывается на панели построителя поведения сервера, соответствующие теги сценариев можно просмотреть в окне «Блок кода».

  6. В окне «Блок кода» введите код времени выполнения, необходимый для реализации поведения сервера.

    Примечание.

    При вводе кода в окне блока кода можно вставить только один тег или блок кода для каждого именованного блока (например, myBehavior_block1, myBehavior_block2, myBehavior_blockn и т. д.) Если необходимо ввести несколько тегов или блоков кода, создайте отдельные блоки для каждого. Также можно копировать и вставлять код из других страниц.

  7. Поместите курсор вставки в то место блока кода, где требуется вставить параметр, или выберите строку, которую нужно заменить параметром.
  8. Нажмите кнопку «Вставить параметры в блок кода».
  9. Введите имя параметра в диалоговом окне «Имя параметра» (например, Session) и нажмите кнопку «ОК».

    Параметр вставляется в блок кода там, где находился курсор вставки до задания параметра. Если была выбрана строка, каждый экземпляр выбранной строки в блоке кода заменяется маркером параметра (например, @@Session@@).

  10. Выберите параметр во всплывающем меню «Вставка кода», указывающий, куда следует встроить блоки кода.
  11. Для указания дополнительных сведений о поведении сервера нажмите кнопку «Дополнительно» (необязательно).
  12. Чтобы создать дополнительные блоки кода, повторите шаги 5-11.
  13. Если для поведения сервера необходимо указать параметры, нужно создать диалоговое окно, в котором можно ввести эти параметры. См. ссылку ниже.
  14. После выполнения действий, необходимых для создания поведения сервера, нажмите кнопку «ОК».

    На панели «Поведение сервера» теперь отображается поведение сервера.

  15. Протестируйте поведение сервера и убедитесь, что оно работает правильно.

Дополнительные параметры

После указания исходного кода и места вставки для каждого блока кода поведение сервера полностью определено. В большинстве случаев никакой дополнительной информации не требуется.

Опытные пользователи могут задать следующие параметры.

Идентификатор

Определяет, должен ли блок кода рассматриваться как идентификатор.

По умолчанию любой блок кода является идентификатором. Когда Dreamweaver находит блок кода идентификатора в документе, поведение сервера помещается на панель «Поведение сервера». Параметр «Идентификатор» определяет, должен ли блок кода рассматриваться как идентификатор.

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

Название поведения сервера

Задает название поведения на панели «Поведение сервера».

После нажатия кнопки со знаком «плюс» (+) на панели «Поведение сервера» название нового поведения сервера появятся во всплывающем меню. После применения экземпляра поведения сервера к документу поведение появляется в списке примененных вариантов поведения на панели «Поведение сервера». В окне «Название поведения сервера» можно задать содержимое меню кнопки со знаком «плюс» (+) и список примененных вариантов поведения.

Исходное значение в окне — имя, указанное ранее в диалоговом окне «Создать поведение сервера». По мере указания параметров название автоматически обновляется и параметры отображаются в круглых скобках после названия поведения сервера.

Set Session Variable (@@Name@@, @@Value@@)

Если пользователь принимает значение по умолчанию, в меню кнопки со знаком «плюс» (+) отображается все, что находится до скобок (например, «Задать переменные сеанса»). Название вместе с параметрами будет отображено в списке примененных вариантов поведения, например «Задать переменные сеанса ("abcd", "5")».

Выделяемый блок кода

Определяет, какой блок кода выбирается, когда пользователь выбирает поведение на панели «Поведение сервера».

При применении поведения сервера один из блоков кода внутри поведения назначается «блоком, который нужно выделить». Если применить поведение сервера, а затем выбрать сценарий на панели «Поведение сервера», заданный блок будет выделен в окне документа. По умолчанию Dreamweaver выделяет первый блок кода, не находящийся перед тегом html. Если все блоки расположены перед тегом html, выделяется первый из них. Опытные пользователи могут указать, какой блок кода будет выделяться.

Создание блоков кода

Создаваемые в построителе вариантов поведения сервера блоки кода включаются в поведение сервера, отображаемое на панели «Поведение сервера». Код может быть любым допустимым кодом времени выполнения для указанной модели сервера. Например, если в качестве типа документа для заказного поведения сервера выбран ColdFusion, создаваемый код должен быть допустимым кодом ColdFusion, который можно выполнить на сервере приложений ColdFusion.

Блок кода можно создать напрямую в построителе вариантов поведения сервера или путем копирования и вставки кода из других источников. Каждый создаваемый в построителе вариантов поведения сервера блок кода должен быть блоком из одного тега или блоком сценария. Если нужно вставить блоки с несколькими тегами, разбейте их на несколько блоков кода.

Условия в блоках кода

Dreamweaver позволяет создавать блоки кода, которые включают управляющие инструкции, выполняемые при определенных условиях. В построителе поведения сервера можно использовать инструкции if, elseif и else, а также параметры поведений сервера. Это позволяет вставлять блоки замещающего текста в зависимости от значений или связей между параметрами поведения сервера.

В следующем примере показано использование инструкций if, elseif и else. Квадратными скобками обозначен необязательный код, а звездочка указывает число экземпляров равное или больше нуля. Чтобы выполнить часть блока кода или блок целиком только при выполнении определенного условия или нескольких условий, применяется следующий синтаксис:

<@ if (expression1) @>    conditional
text1[<@ elseif (expression2) @>    conditional text2]*[<@ else @> 
    conditional text3]<@ endif @>

Условным выражением может быть любое выражение JavaScript, которое можно вычислить с помощью функции JavaScript eval() и которое может содержать параметр поведения сервера, отмеченный маркером @@ (знаки @@ ставятся для различения этого параметра и переменных и ключевых слов JavaScript).

Эффективное использование условных выражений

При использовании инструкций if, else и elseif внутри XML-тега insertText выполняется предварительная обработка текстовых вариантов для разрешения инструкций if и определения того, какой текст включать в результат. Аргументом инструкций if и elseif является выражение. Условное выражение такое же, как для условных выражений в JavaScript; оно также может содержать параметры поведения сервера. Подобные инструкции позволяют выбирать между альтернативными блоками кода в зависимости от значений или связей между параметрами поведения сервера.

Например, следующий код на JSP принадлежит поведению сервера Dreamweaver, в котором используется условный блок кода.

@@rsName@@.close(); 
<@ if (@@callableName@@ != '') @> 
@@callableName@@.execute(); 
@@rsName@@ = @@callableName@@.getResultSet();<@ else @> 
@@rsName@@ = Statement@@rsName@@.executeQuery(); 
<@ endif @> 
@@rsName@@_hasData = @@rsName@@.next();

Условный блок кода начинается с <@ if (@@callableName@@ != '') @> и заканчивается <@ endif @>. При выполнении этого кода, если пользователь вводит значение параметра @@callableName@@ в диалоговом окне «Параметр» поведения сервера (иными словами, если параметр @@callableName@@ не равен null или, то есть @@callableName@@ != ''), то блок условного кода замещается следующими инструкциями.

@@callableName@@.execute(); 
@@rsName@@ = @@callableName@@.getResultSet();

В противном случае он замещается следующими инструкциями.

@@rsName@@ = Statement@@rsName@@.executeQuery();

Размещение блока кода

При создании блоков кода с помощью построителя поведения сервера нужно указать, где они будут вставлены в HTML-коде страницы.

Например, при вставке блока кода до открывающего тега <html> необходимо затем указать положение блока относительно других тегов, сценариев и вариантов поведения сервера в данном разделе HTML-кода страницы. Типичным примером является размещение поведения или до, или после каких-либо запросов по наборам данных, которые могут находиться в коде страницы до открывающего тега <html>.

При выборе варианта размещения во всплывающем меню «Вставка кода» вид меню «Относительное положение» изменяется и в нем отображаются параметры, соответствующие данной части страницы. Например, при выборе пункта «Перед тегом <html>» в меню «Вставить код» параметры размещения, доступные в меню «Относительное положение», отражают допустимые варианты для конкретной части страницы.

В следующей таблице приведены варианты вставки блоков кода, а также доступные параметры размещения.

Параметры вставки кода

Параметры относительного положения

Перед тегом <html>

  • В начале файла

  • Непосредственно перед набором записей

  • Непосредственно после набора записей

  • Непосредственно перед тегом <html>

  • Заказная позиция

После тега </html>

  • Перед концом файла

  • Перед закрытием набора записей

  • После закрытия набора записей

  • После тега </html>

  • Заказная позиция

Относительно определенного тега

Выберите тег во всплывающем меню «Тег», затем выберите параметры расположения тега.

Относительно выбранного фрагмента

До выбранного фрагмента

После выбранного фрагмента

Заменить выбранный фрагмент

Заключить выбранный фрагмент

Чтобы указать заказную позицию, задайте вес (weight) для блока кода. Если требуется вставить более одного блока кода в определенном порядке, воспользуйтесь параметром «Заказная позиция». Например, для вставки упорядоченного списка из 3 блоков кода после блоков, открывающих набор записей, следует указать вес первого блока — 60, второго — 65, а третьего — 70.

По умолчанию Dreamweaver назначает вес 50 каждому блоку кода, открывающему набор записей и вставленному перед тегом <html>. Если вес двух или более блоков совпадает, Dreamweaver определяет порядок блоков в случайном порядке.

Размещение блока кода (общие инструкции)

  1. Создайте блок кода с помощью построителя вариантов поведения сервера.
  2. В диалоговом окне построителя поведения сервера выберите во всплывающем меню «Вставить код» место, где нужно вставить блок кода.
  3. В диалоговом окне построителя поведений сервера выберите положение относительно выбранного ранее места вставки кода.
  4. По окончании написания кода нажмите кнопку «ОК».

    Поведение сервера отображается на панели «Поведение сервера» («Окно» > «Поведение сервера»), нажмите кнопку со знаком «плюс» (+) для просмотра поведения сервера.

  5. Протестируйте поведение сервера и убедитесь, что оно работает правильно.

Размещение блока кода относительно другого тега на странице

  1. Выберите пункт «Относительно указанного тега» в меню «Вставить код».
  2. В окне «Тег» введите тег или выберите его во всплывающем меню.

    При вводе тега не заключайте его в угловые скобки (<>).

  3. Укажите положение относительно тега, выбрав один из вариантов в меню «Относительное положение».

Размещение блока кода относительно другого выделенного тега

  1. Выберите пункт «Относительно выделенного фрагмента» во всплывающем меню «Вставить код».
  2. Укажите положение относительно выделенного фрагмента, выбрав один из вариантов во всплывающем меню «Относительное положение».

    Блок кода можно вставить непосредственно перед или после выделенного фрагмента. Также можно заменить выделенный фрагмент своим блоком кода или заключить выделенный фрагмент в блок кода.

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

    <CFIF Day=”Monday”></CFIF>

    Вставьте часть блока кода, относящуюся к открывающему тегу, перед открывающим тегом фрагмента, а часть блока кода, относящуюся к закрывающему тегу, после закрывающего тега фрагмента.

Повтор блоков кода с помощью директивы loop

Для повторения части блока кода или блока целиком применяется следующий синтаксис.

<@ loop (@@param1@@,@@param2@@) @>    code
block<@ endloop @>

При создании вариантов поведения сервера можно использовать конструкции с циклом для повторения блока кода заданное число раз. <@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> блок кода <@ endloop @>В директиву loop в качестве аргументов передается список разделенных запятыми массивов параметров. В этом случае аргументы массивов параметров позволяют предоставить различные значения для одного параметра. Повторяющийся текст дублируется n раз, где n — это длина массива параметров. Если задано более одного аргумента массива параметров, все массивы должны иметь одинаковую длину. На i-м выполнении цикла i-е элементы массива параметров заменяют связанные экземпляры параметров в блоке кода.

При создании диалогового окна для поведения сервера можно добавить элемент управления, позволяющий создавать массивы параметров. Dreamweaver включает простой элемент управления массивами, который можно использовать при создании диалоговых окон. Этот элемент управления, «Список текстовых полей с разделителями-запятыми», доступен в построителе вариантов поведения сервера. Для создания более сложных элементов пользовательского интерфейса обратитесь к документации по API-интерфейсу, чтобы создать диалоговое окно с элементом управления для создания массивов (например, элементом «Сетка»).

Внутри условной инструкции можно использовать любое число условий или директив loop. Например, можно задать выполнение цикла, если выражение истинно.

В следующем примере показано, как такие повторяющиеся блоки кода можно использовать для создания вариантов поведения сервера (примером служит функция ColdFusion, применяемая для доступа к хранимым процедурам).

<@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @>    code block 
<@ endloop @>
<CFSTOREDPROC procedure="AddNewBook" 
    datasource=#MM_connection_DSN# 
    username=#MM_connection_USERNAME# 
    password=#MM_connection_PASSWORD#> 
<CFPROCPARAM type="IN" dbvarname="@CategoryId" value="#Form.CategoryID#" 
    cfsqltype="CF_SQL_INTEGER"> 
<CFPROCPARAM type="IN" dbvarname="@ISBN" value="#Form.ISBN#" 
    cfsqltype="CF_SQL_VARCHAR"> 
</CFSTOREDPROC>

В данном примере тег CFSTOREDPROC может включать любое число тегов CFPROCPARAM или не содержать их совсем. Однако без директивы loop не существует возможности включить теги CFPROCPARAM внутрь вставленных тегов CFSTOREDPROC. Если бы поведение сервера нужно было создать без директивы loop, пришлось бы разделить этот пример на 2 части: основной тег CFSTOREDPROC и тег CFPROCPARAM с несколькими участниками.

При помощи директивы loop эту процедуру можно написать следующим образом.

<CFSTOREDPROC procedure="@@procedure@@" 
datasource=#MM_@@conn@@_DSN# 
username=#MM_@@conn@@_USERNAME# 
password=#MM_@@conn@@_PASSWORD#> 
<@ loop (@@paramName@@,@@value@@,@@type@@) @> 
    <CFPROCPARAM type="IN" 
    dbvarname="@@paramName@@" 
    value="@@value@@" 
    cfsqltype="@@type@@"> 
<@ endloop @> 
</CFSTOREDPROC>

Примечание.

Новые строки после «@>» игнорируются.

Если пользователь введет следующие значения параметров в диалоговом окне построителя вариантов поведения сервера.

procedure = "proc1" 
conn = "connection1" 
paramName = ["@CategoryId", "@Year", "@ISBN"] 
value = ["#Form.CategoryId#", "#Form.Year#", "#Form.ISBN#"] 
type = ["CF_SQL_INTEGER", "CF_SQL_INTEGER", "CF_SQL_VARCHAR"]

Поведение сервера вставит следующий код времени выполнения в страницу.

<CFSTOREDPROC procedure="proc1" 
datasource=#MM_connection1_DSN# 
username=#MM_connection1_USERNAME# 
password=#MM_connection1_PASSWORD#> 
<CFPROCPARAM type="IN" dbvarname="@CategoryId" value="#Form.CategoryId#" 
    cfsqltype="CF_SQL_INTEGER"> 
<CFPROCPARAM type="IN" dbvarname="@Year" value="#Form.Year#" 
    cfsqltype="CF_SQL_INTEGER"> 
<CFPROCPARAM type="IN" dbvarname="@ISBN" value="#Form.ISBN#" 
    cfsqltype="CF_SQL_VARCHAR"> 
</CFSTOREDPROC>

Примечание.

Массивы параметров нельзя использовать вне цикла в качестве части выражения условной инструкции.

Использование переменных _length и _index в директиве loop

Директива loop включает 2 встроенные переменные, которые можно использовать для вложенных условий if. Это переменные _length и _index. Переменная _length содержит длину массива, обрабатываемого директивой loop, а переменная _index содержит текущий индекс директивы loop. Чтобы гарантировать, что переменные воспринимаются только как директивы, а не как фактические параметры, передаваемые в цикл, не заключайте переменные в маркеры @@.

Примером использования встроенных переменных является их применение к атрибуту import директивы page. Пакеты в атрибуте import должны разделяться запятыми. Если директива loop включает целиком атрибут import, то при первой итерации цикла будет выведено только имя атрибута import=, включая закрывающие двойные кавычки ("), а запятая на последней итерации цикла выведена не будет. С помощью встроенной переменной это можно выразить следующим образом.

<@loop (@@Import@@)@> 
<@ if(_index == 0)@>import=" 
<@endif@>@@Import@@<@if (_index == _length-1)@>"<@else@>, 
<@ endif @> 
<@endloop@>

Запрос параметра для поведения сервера

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

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

Примечание.

Параметр добавляется в блок кода без участия разработчика, если было указано, что код нужно вставлять относительно определенного тега, указанного дизайнером (то есть если в меню «Вставить код» был выбран пункт «Относительно указанного тега»). Параметр добавляет меню тега к диалоговому окну поведения, чтобы дизайнер мог указать тег.

Определение параметров в коде поведения сервера

  1. Введите маркер параметра в код там, где необходимо вставить указанное значение параметра. Параметр имеет следующий формат.
    @@parameterName@@
  2. Выделите фрагмент formParam маркерами параметра (@@).
    <% Session(“lang_pref”) = Request.Form(“@@formParam@@”); %>

    Например, если поведение сервера содержит следующий блок кода.

    <% Session(“lang_pref”) = Request.Form(“Form_Object_Name”); %>

    Чтобы дизайнер предоставил значение Form_Object_Name, выделите этот фрагмент маркерами параметра (@@).<% Session(“lang_pref”) = Request.Form(“@@Form_Object_Name@@”); %>

    <% Session(“lang_pref”) = Request.Form(“@@Form_Object_Name@@”); %>

Также можно выделить фрагмент и нажать кнопку «Вставка параметра в блок кода». Введите имя параметра и нажмите кнопку «ОК». Dreamweaver заменяет все вхождения выделенного фрагмента заданным именем параметра внутри маркеров.

Dreamweaver использует фрагмент, выделенный маркерами параметра, для обозначения элементов управления в создаваемом диалоговом окне (см. следующую процедуру). В предыдущем примере Dreamweaver создал диалоговое окно со следующей меткой.

Примечание.

Имя параметра в коде поведения сервера не должно содержать пробелов. Поэтому метки диалоговых окон также не могут содержать пробелов. Для включения пробелов в метку можно отредактировать созданный HTML-файл.

Ввод имени параметра
Ввод имени параметра

Создание диалогового окна поведения сервера для запроса значения параметра

  1. Нажмите «Далее» в построителе вариантов поведения сервера.
  2. Чтобы изменить порядок отображения элементов управления диалогового окна, выберите параметр и нажимайте стрелки «вверх» и «вниз».
  3. Для изменения элемента управления параметра выберите параметр, а затем другой элемент управления в столбце «Выводить как».
  4. Нажмите кнопку «ОК».

    Dreamweaver создаст диалоговое окно с помеченными элементами управления для каждого параметра, указанного дизайнером.

Просмотр диалогового окна

  1. Нажмите кнопку со знаком «плюс» (+) на панели «Поведение сервера» («Окно» > «Поведение сервера») и выберите во всплывающем меню заказное поведение сервера.

Изменение диалоговое окна, созданного для поведения сервера

  1. На панели «Поведение сервера» («Окно» > «Поведение сервера») нажмите кнопку со знаком «плюс» (+) и выберите во всплывающем меню «Изменение поведения сервера».
  2. Выберите из списка поведение сервера и нажмите кнопку «Открыть».
  3. Нажмите кнопку «Далее».

    Появится диалоговое окно со всеми предоставленными дизайнером параметрами, определенными в коде.

  4. Чтобы изменить порядок отображения элементов управления диалогового окна, выберите параметр и нажимайте стрелки «вверх» и «вниз».
  5. Для изменения элемента управления параметра выберите параметр, а затем другой элемент управления в столбце «Выводить как».
  6. Нажмите кнопку «ОК».

Изменение вариантов поведения сервера

Можно изменить любое поведение сервера, созданное с помощью построителя поведений сервера, включая варианты поведения сервера, загруженные с сайта Dreamweaver Exchange и других сторонних разработчиков.

Если поведение сервера применяется к странице, а затем изменяется в Dreamweaver, экземпляры предыдущего сценария больше не отображаются на панели «Поведение сервера». Панель «Поведение сервера» ищет на странице код, который совпадает с кодом известных вариантов поведения сервера. Если код поведения сервера изменяется, панель не распознает предыдущие версии сценария на этой странице.

Сохранение старых и новых версий вариантов поведения сервера на панели

  1. Нажмите кнопку со знаком «плюс» (+) на панели «Поведение сервера» («Окно» > «Поведение сервера»), выберите «Создать поведение сервера» и создайте копию старого поведения сервера.

Изменение кода поведения сервера, созданного с помощью построителя поведения сервера

  1. На панели «Поведение сервера» («Окно» > «Поведение сервера») нажмите кнопку со знаком «плюс» (+) и выберите во всплывающем меню «Изменение поведения сервера».

    В диалоговом окне «Изменение поведения сервера» отображаются все варианты поведения сервера для текущей серверной технологии.

  2. Выберите поведение сервера и нажмите кнопку «Изменить».
  3. Выберите подходящий блок кода и измените код, маркеры параметров или расположение блока кода, который нужно вставить в страницы.
  4. Если измененный код не содержит каких-либо предоставленных дизайнером параметров, нажмите кнопку «ОК».

    Dreamweaver обновляет поведение сервера без диалогового окна. Новое поведение сервера появляется во всплывающем меню кнопки со знаком «плюс» (+) на панели «Поведение сервера».

  5. Если измененный код не содержит каких-либо предоставленных дизайнером параметров, нажмите кнопку «Далее».

    Dreamweaver спрашивает, следует ли создать новое диалоговое окно, заменив предыдущее. Внесите необходимые изменения и нажмите кнопку «ОК».

    Dreamweaver сохраняет все изменения в EDML-файле поведения сервера.

Рекомендации по написанию кода

В целом код поведения сервера должен быть кратким и надежным. Разработчики веб-приложений очень внимательно относятся к коду, добавляемому на их страницы. Следуйте общепринятым рекомендациям по программированию для документов на соответствующих языках (ColdFusion, JavaScript, VBScript или PHP). При добавлении комментариев имейте в виду, что понимать написанный код должны люди с разным уровнем технической подготовки, такие как веб-дизайнеры или другие разработчики веб-приложений. Включайте комментарии, детально описывающие назначение кода, а также другие специальные указания по его включению в состав страницы.

При создании поведения сервера помните о следующих рекомендациях по программированию.

Проверка ошибок

Важное требование. В коде поведения сервера ошибки должны обрабатываться предельно аккуратно. Постарайтесь предусмотреть каждую возможность. Например, что происходит, если запрос параметра завершается сбоем? Что происходит, если в результате запроса не возвращается ни одной записи?

Уникальные имена

Гарантируют, что код точно идентифицируется и исключают возникновение конфликтов имен с существующим кодом. Например, если страница содержит функцию hideLayer() и глобальную переменную ERROR_STRING, а поведение сервера вставляет код, в котором также используются эти имена, то поведение сервера может конфликтовать с существующим кодом.

Префиксы в коде

Позволяют выделять на странице собственные функции времени выполнения и глобальные переменные. Одно из правил — использовать свои инициалы. Никогда не используйте префикс MM_, так как он зарезервирован только для Dreamweaver. В Dreamweaver все функции и глобальные переменные имеют префикс MM_ для предотвращения конфликтов имен с любым пользовательским кодом.

var MM_ERROR_STRING = "..."; 
function MM_hideLayer() {

Избегайте использования похожих блоков

чтобы создаваемый код не слишком сильно напоминал код в других блоках. Если блок кода слишком похож на другой блок кода на этой странице, панель «Поведение сервера» может ошибочно определить первый блок кода в качестве экземпляра второго блока кода (или наоборот). Простым решением этой проблемы является добавление комментария к блоку кода, чтобы сделать его отличным от другого.

Тестирование поведения сервера

В Dreamweaver Exchange рекомендуется проведение следующих тестов для каждого создаваемого поведения сервера.

  • Применить поведение сервера из панели «Поведение сервера». Если в нем есть диалоговое окно, введите допустимые данные в каждое поле и нажмите кнопку «ОК». Убедитесь в том, что при применении поведения сервера не возникает ошибок. Убедитесь, что код времени выполнения для поведения сервера отображается в инспекторе кода.

  • Снова примените поведение сервера и введите некорректные данные в каждое поле диалогового окна. Попробуйте оставить поле пустым, использовать большие или отрицательные числа, недопустимые символы (например, «/», «?», «:», «*» и т. д.), а также использовать буквы в числовых полях. Можно создать процедуры проверки формы для обработки некорректных данных (процедуры проверки подразумевают программирование вручную, которое выходит за рамки настоящего руководства).

    После успешного применения поведения сервера к странице проверьте следующее.

  • Убедитесь, что на панели «Поведение сервера» имя поведения сервера отображается в списке сценариев, добавленных на страницу.

  • При необходимости убедитесь, что на странице отображаются значки поведений сервера. Общие значки поведений сервера имеют вид золотистых щитов. Чтобы отобразить значки, включите параметр «Невидимые элементы» («Просмотр» > «Вспомогательные элементы» > «Невидимые элементы»).

  • В представлении «Код» («Просмотр» > «Код») убедитесь, что не создан неправильный код.

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

    Наконец, загрузите страницу на сервер и откройте ее в браузере. Просмотрите исходный HTML-код страницы и убедитесь, что серверными сценариями не был создан неправильный HTML-код.

Эта работа лицензируется в соответствии с лицензией Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported  На посты, размещаемые в Twitter™ и Facebook, условия Creative Commons не распространяются.

Правовые уведомления   |   Политика конфиденциальности в сети Интернет