Benutzerdefinierte Serververhalten in Dreamweaver hinzufügen

Zuletzt aktualisiert am 25. April 2024
Anmerkung

Die Benutzeroberfläche wurde in Dreamweaver vereinfacht. Daher kann es sein, dass einige der in diesem Artikel beschriebenen Optionen in Ihrer Version von Dreamweaver nicht vorhanden sind. Weitere Informationen finden Sie in diesem Artikel.

Benutzerdefinierte Serververhalten

Dreamweaver wird mit einer Reihe von integrierten Serververhalten geliefert, mit denen du einer Website ganz einfach dynamische Funktionen hinzufügen kannst. Du kannst die Dreamweaver-Funktionalität erweitern, indem du Serververhalten erstellst, die deinen Entwicklungsanforderungen entsprechen, oder indem du Serververhalten von der Dreamweaver Exchange-Website beziehst.

Bevor du deine eigenen Serververhalten erstellst, solltest du die Dreamweaver Exchange-Website überprüfen, um zu sehen, ob bereits ein anderer Anbieter ein Serververhalten erstellt hat, das die Funktionalität liefert, die du deiner Website hinzufügen möchtest. Oft hat ein Drittanbieter-Entwickler ein Serververhalten erstellt und getestet, das deine Anforderungen erfüllt.

Zugriff auf Dreamweaver Exchange

Greife in Dreamweaver auf Dreamweaver Exchange auf eine der folgenden Arten zu:
  • Wählen Sie „Hilfe“ > „Dreamweaver Exchange“.

  • Wähle Fenster > Serververhalten, klicke auf den Plus-Button (+) und wähle Weitere Serververhalten abrufen.

Die Dreamweaver Exchange-Webseite wird im Browser geöffnet.

Melde dich bei Exchange mit deiner Adobe ID an oder folge den Anweisungen zum Eröffnen eines Adobe-Kontos, falls du noch keine Dreamweaver Exchange-ID erstellt hast.

Installiere ein Serververhalten oder eine andere Erweiterung in Dreamweaver

Starte den Extension Manager, indem du Befehle > Erweiterungen verwalten auswählst.
Wähle Datei > Paket installieren im Extension Manager.

Weitere Informationen finden Sie unter Extension Manager verwenden.

Arbeitsablauf für benutzerdefinierte Serververhalten

Wenn du ein Webentwickler bist, der sich mit ColdFusion, JavaScript, VBScript oder PHP auskennt, kannst du deine eigenen Serververhalten schreiben. Die Schritte zum Erstellen eines Serververhaltens umfassen die folgenden Aufgaben:

  • Schreibe einen oder mehrere Codeblöcke, die die erforderliche Aktion ausführen.

  • Gib an, wo der Codeblock im HTML-Code der Seite eingefügt werden soll.

  • Wenn das Serververhalten erfordert, dass ein Wert für einen Parameter angegeben wird, erstelle ein Dialogfeld, das den Webentwickler auffordert, der das Verhalten anwendet, einen entsprechenden Wert anzugeben.

  • Testen Sie ein Serververhalten, bevor es anderen Personen zur Verfügung gestellt wird.

Serververhalten-Erstellung verwenden

Verwende den Server Behavior Builder, um den Codeblock oder die Codeblöcke hinzuzufügen, die das Verhalten in eine Seite einfügt.

Klicke im Serververhalten-Bedienfeld (Fenster > Serververhalten) auf den Plus-Button (+) und wähle Neues Serververhalten.
Wähle aus dem Popup-Menü Dokumenttyp den Dokumenttyp aus, für den du das Serververhalten entwickelst.
Geben Sie im Feld „Name“ einen Namen für das Serververhalten ein.
(Optional) Um ein vorhandenes Serververhalten zu kopieren und zu dem Verhalten hinzuzufügen, das du erstellst, wähle die Option Vorhandenes Serververhalten kopieren und wähle dann das Serververhalten im Popup-Menü Zu kopierendes Verhalten. Klicken Sie auf „OK“.

Das Dialogfeld „Serververhalten-Erstellung“ wird angezeigt.

Um einen neuen Codeblock hinzuzufügen, klicke auf den Plus-Button (+), gib einen Namen für den Codeblock ein und klicke auf OK.

Der Name, den du eingibst, erscheint im Server Behavior Builder mit den entsprechenden Scripting-Tags, die im Codeblock-Feld sichtbar sind.

Gib im Codeblock-Feld den Laufzeit-Code ein, der zur Implementierung des Serververhaltens erforderlich ist.
Anmerkung

Beim Eingeben von Code im Codeblock-Feld kannst du nur einen einzelnen Tag oder Codeblock für jeden benannten Codeblock einfügen (zum Beispiel myBehavior_block1, myBehavior_block2, myBehavior_blockn, usw.). Wenn du mehrere Tags oder Codeblöcke eingeben musst, erstelle einen individuellen Codeblock für jeden einzelnen. Du kannst auch Code von anderen Seiten kopieren und einfügen.

Platziere den Einfügepunkt im Codeblock, wo du den Parameter einfügen möchtest, oder wähle eine Zeichenfolge aus, die durch einen Parameter ersetzt werden soll.
Klicken Sie auf die Schaltfläche „Parameter in Codeblock einfügen“.
Gib einen Namen für den Parameter in das Feld Parametername ein (zum Beispiel Session) und klicke auf OK.

Der Parameter wird an der Stelle in den Codeblock eingefügt, an der Sie den Einfügepunkt vor der Definition des Parameters platziert haben.Wenn du eine Zeichenfolge ausgewählt hast, wird jede Instanz der ausgewählten Zeichenfolge im Codeblock durch eine Parametermarkierung ersetzt (zum Beispiel @@Session@@).

Wähle eine Option aus dem Popup-Menü Code einfügen aus, die angibt, wo die Codeblöcke eingebettet werden sollen.
(Optional) Um zusätzliche Informationen über das Serververhalten anzugeben, klicke auf den Button Erweitert.
Wenn Sie weitere Codeblöcke erstellen müssen, wiederholen Sie die Schritte 5 bis 11.
Wenn das Serververhalten erfordert, dass Parameter bereitgestellt werden, musst du ein Dialogfeld erstellen, das Parameter von der Person akzeptiert, die das Verhalten anwendet. Siehe nachstehender Link.
Nachdem du die erforderlichen Schritte zur Erstellung des Serververhaltens durchgeführt hast, klicke auf OK.

Das Serververhalten wird im Bedienfeld „Serververhalten“ aufgeführt.

Teste das Serververhalten und stelle sicher, dass es ordnungsgemäß funktioniert.

Erweiterte Optionen

Nachdem du den Quellcode und die Einfügeposition für jeden Codeblock angegeben hast, ist das Serververhalten vollständig definiert. In den meisten Fällen musst du keine zusätzlichen Informationen angeben.

Wenn du ein fortgeschrittener Anwender bist, kannst du jede der folgenden Optionen einstellen:

Kennzeichner

Gibt an, ob der Codeblock als Kennung behandelt werden soll.

Standardmäßig ist jeder Codeblock ein Kennzeichner. Wenn Dreamweaver irgendwo in einem dokument einen Identifizierungscodeblock findet, listet es das Verhalten im Bedienfeld Serververhalten auf. Verwende die Option Identifizierung, um anzugeben, ob der Codeblock als Identifizierung behandelt werden soll.

Mindestens einer der Codeblöcke des Serververhaltens muss eine Kennung sein.Ein Codeblock sollte keine Kennung sein, wenn eine der folgenden Bedingungen zutrifft: derselbe Codeblock wird von einem anderen Serververhalten verwendet; oder der Codeblock ist so einfach, dass er natürlich auf der Seite vorkommen könnte.

Serververhalten-Titel

Hiermit legen Sie den Titel des Verhaltens im Bedienfeld „Serververhalten“ fest.

Wenn der Seitendesigner auf den Plus-Button (+) im Bedienfeld Serververhalten klickt, erscheint der Titel des neuen Serververhaltens im Popup-Menü. Wenn ein Designer eine Instanz eines Serververhaltens auf ein dokument anwendet, erscheint das Verhalten in der Liste der angewendeten Verhalten im Bedienfeld Serververhalten. Verwende das Feld Titel des Serververhaltens, um den Inhalt des Plus-Popup-Menüs (+) und die Liste der angewendeten Verhalten anzugeben.

Der anfängliche Wert im Feld ist der Name, den du im Dialogfeld Neues Serververhalten angegeben hast. Während Parameter definiert werden, wird der Name automatisch aktualisiert, sodass die Parameter in Klammern nach dem Namen des Serververhaltens erscheinen.

Session-Variable setzen (@@Name@@, @@Wert@@)

Wenn der Anwender den Standardwert akzeptiert, erscheint alles vor den Klammern im Plus-Popup-Menü (+) (zum Beispiel Session-Variable setzen). Der Name plus die Parameter werden in der Liste der angewendeten Verhalten erscheinen—zum Beispiel Session-Variable setzen ("abcd", "5").

Auszuwählender Codeblock

Gibt an, welcher Codeblock ausgewählt ist, wenn der Anwender das Verhalten im Server Behaviors-Panel auswählt.

Wenn du ein\nServer-Verhalten anwendest, wird einer der Code-Blöcke innerhalb des Verhaltens als\n„auszuwählender Code-Block" festgelegt. Wenn du das Server-Verhalten anwendest und\ndann das Verhalten im Bedienfeld „Server-Verhalten" auswählst, wird der festgelegte\nBlock im Dokumentfenster ausgewählt.Standardmäßig wählt Dreamweaver den ersten Code-Block\naus, der sich nicht über dem html-Tag befindet.Wenn sich alle Codeblöcke oberhalb des html-Tags befinden, wird der erste ausgewählt.Fortgeschrittene Benutzer können festlegen, welcher Codeblock ausgewählt wird.

Codeblöcke erstellen

Die Codeblöcke, die du im Server Behavior Builder erstellst, werden in einem Serververhalten gekapselt, das im Bedienfeld Serververhalten angezeigt wird.Der Code kann jeder gültige Laufzeit-Code für das spezifizierte Server-Modell sein. Wenn du beispielsweise ColdFusion als Dokumenttyp für dein benutzerdefiniertes Serververhalten wählst, muss der von dir geschriebene Code gültiger ColdFusion-Code sein, der auf einem ColdFusion-Server läuft.

Du kannst die Codeblöcke entweder direkt im Server Behavior Builder erstellen oder den Code aus anderen Quellen kopieren und einfügen. Jeder Codeblock, den du im Server Behavior Builder erstellst, muss ein einzelner Tag oder Skriptblock sein. Wenn du mehrere Tag-Blöcke einfügen musst, teile sie in separate Code-Blöcke auf.

Bedingungen in Codeblöcken

Dreamweaver ermöglicht es dir, Codeblöcke zu entwickeln, die Steuerungsanweisungen enthalten, die bedingt ausgeführt werden. Der Server Behavior Builder verwendet if-, elseif- und else-Anweisungen und kann auch Serververhaltensparameter enthalten.Dadurch kannst du alternative Textblöcke basierend auf den Werten von ODER-Beziehungen zwischen Server-Behavior-Parametern einfügen.

Das folgende Beispiel zeigt die if-, elseif- und else-Anweisungen. Die eckigen Klammern ([ ]) kennzeichnen optionalen Code und das Sternchen (*) kennzeichnet null oder mehr Instanzen. Um einen Teil eines Codeblocks oder den gesamten Codeblock nur auszuführen, wenn eine bestimmte Bedingung oder bestimmte Bedingungen zutreffen, verwende die folgende Syntax:

<@ if (expression1) @> Bedingung

text1[<@ elseif (expression2) @> bedingter text2]*[<@ else @>

bedingter text3]<@ endif @>

Bedingungsausdrücke können beliebige JavaScript-Ausdrücke sein, die mit der JavaScript-Funktion eval() ausgewertet werden können und einen mit @@ markierten Server-Behavior-Parameter enthalten können.(Die @@'s unterscheiden den Parameter von JavaScript-Variablen und -Keywords.)

Bedingte Anweisungen effektiv verwenden

Wenn du if-, else- und elseif-Direktiven innerhalb des insertText XML-Tags verwendest, wird der Teilnehmertext vorverarbeitet, um die if-Direktiven aufzulösen und zu bestimmen, welcher Text in das Ergebnis aufgenommen werden soll. Die if- und elseif-Direktiven nehmen den Ausdruck als Argument. Der Bedingungsausdruck ist derselbe wie bei JavaScript-Bedingungsausdrücken und kann auch Serververhaltensparameter enthalten.Anweisungen wie diese ermöglichen es dir, zwischen alternativen Code-Blöcken basierend auf den Werten von oder Beziehungen zwischen Server-Verhalten-Parametern zu wählen.

Zum Beispiel stammt der folgende JSP-Code aus einem Dreamweaver-Serververhalten, das einen bedingten Codeblock verwendet:

@@rsName@@.close();

<@ if (@@callableName@@ != '') @>

@@callableName@@.execute();

@@rsName@@ = @@callableName@@.getResultSet();<@ else @>

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

<@ endif @>

@@rsName@@_hasData = @@rsName@@.next();

Der bedingte Code-Block beginnt mit <@ if (@@callableName@@ != '') @> und endet mit <@ endif @>. Entsprechend dem Code, wenn der Benutzer einen Wert für den @@callableName@@-Parameter im Parameter-Dialogfeld des Server-Verhaltens eingibt—mit anderen Worten, wenn der @@callableName@@-Parameterwert nicht null ist, oder (@@callableName@@ != '')—dann wird der bedingte Code-Block durch die folgenden Anweisungen ersetzt:

@@callableName@@.execute();

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

Andernfalls wird der Codeblock durch die folgende Anweisung ersetzt:

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

Codeblöcke positionieren

Wenn du Codeblöcke mit dem Server Behavior Builder erstellst, musst du angeben, wo sie im HTML-Code der Seite eingefügt werden sollen.

Zum Beispiel, wenn du einen Code-Block oberhalb des öffnenden <html>-Tags einfügst, musst du dann die Position des Code-Blocks relativ zu anderen Tags, Skripten und Server-Verhalten in diesem Bereich des HTML-Codes der Seite angeben. Typische Beispiele beinhalten die Positionierung eines Verhaltens entweder vor oder nach eventuell vorhandenen Recordset-Abfragen, die auch im Seiten-Code oberhalb des öffnenden <html>-Tags existieren könnten.

Wenn du eine Positionierungsoption aus dem Code einfügen-Popup-Menü auswählst, ändern sich die verfügbaren Optionen im Relative Position-Popup-Menü, um relevante Optionen für diesen Teil der Seite bereitzustellen. Zum Beispiel, wenn du Oberhalb des <html>-Tags im Code einfügen-Popup-Menü auswählst, spiegeln die verfügbaren Positionierungsoptionen im Relative Position-Popup-Menü Auswahlmöglichkeiten wider, die für diesen Teil der Seite relevant sind.

Die folgende Tabelle zeigt die Code-Block-Einfügungsoptionen und die verfügbaren relativen Positionierungsoptionen für jede:

Optionen für „Code einfügen“

Optionen für „Relative Position“

Vor dem Tag <html>

  • Am Anfang der Datei

  • Unmittelbar vor den Datensatzgruppen

  • Unmittelbar nach den Datensatzgruppen

  • Direkt oberhalb des Tags <html>

  • Benutzerdefinierte Position

Unterhalb des Tags </html>

  • Vor dem Ende der Datei

  • Vor dem Ende der Datensatzgruppe

  • Nach dem Ende der Datensatzgruppe

  • Nach dem Tag </html>

  • Benutzerdefinierte Position

Relativ zu einem bestimmten Tag

Wähle ein Tag aus dem Tag-Popup-Menü aus und wähle dann aus den Tag-Positionierungsoptionen.

Relativ zur Auswahl

Vor der Auswahl

Nach der Auswahl

Auswahl ersetzen

Um die Auswahl legen

Um eine benutzerdefinierte Position anzugeben, musst du dem Code-Block eine Gewichtung zuweisen.Verwende die Option Benutzerdefinierte Position, wenn du mehr als einen Code-Block in einer bestimmten Reihenfolge einfügen musst. Beispiel: Um eine geordnete Reihe von drei Codeblöcken nach den Codeblöcken einzufügen, die Recordsets öffnen, gibst du für den ersten Block eine Stärke von 60 ein, für den zweiten 65 und für den dritten 70.

Standardmäßig weist Dreamweaver allen Codeblöcken, die Recordsets öffnen und über dem <html>-Tag eingefügt werden, eine Stärke von 50 zu. Wenn die Stärke von zwei oder mehr Blöcken übereinstimmt, legt Dreamweaver die Reihenfolge zwischen den Blöcken zufällig fest.

Codeblock positionieren (allgemeine Anweisungen)

Schreibe einen Codeblock mit dem Server Behavior Builder.
Wähle im Dialogfeld Server Behavior Builder eine Position aus, in die der Codeblock eingefügt werden soll, und zwar aus dem Popup-Menü Code einfügen.
Wähle im Dialogfeld Server Behavior Builder eine Position relativ zu der aus, die du im Popup-Menü Code einfügen ausgewählt hast.
Wenn du die Erstellung des Codeblocks abgeschlossen hast, klicke auf OK.

Das Serververhalten wird im Bedienfeld Serververhalten aufgelistet (Fenster > Serververhalten). Klicke auf den Plus-Button (+), um das Serververhalten anzuzeigen.

Teste das Serververhalten und stelle sicher, dass es ordnungsgemäß funktioniert.

Codeblock relativ zu einem anderen Tag auf der Seite positionieren

Wähle im Popup-Menü Code einfügen die Option Relativ zu einem bestimmten Tag aus.
Gib im Feld Tag das Tag ein oder wähle eines aus dem Popup-Menü aus.

Wenn Sie ein Tag eingeben, lassen Sie die spitzen Klammern (< >) weg.

Gib eine Position relativ zum Tag an, indem du eine Option im Popup-Menü Relative Position auswählst.

Codeblock relativ zu einem vom Seitendesigner ausgewählten Tag positionieren

Wähle im Popup-Menü Code einfügen die Option Relativ zur Auswahl aus.
Gib eine Position relativ zur Auswahl an, indem du eine Option im Popup-Menü Relative Position auswählst.

Du kannst deinen Codeblock direkt vor oder direkt nach der Auswahl einfügen. Du kannst auch die Auswahl durch deinen Codeblock ersetzen oder den Codeblock um die Auswahl legen.

Um den Codeblock um eine Auswahl zu wickeln, muss die Auswahl aus einem öffnenden und schließenden Tag ohne etwas dazwischen bestehen, wie folgt:

<CFIF Day="Monday"></CFIF>

Füge das öffnende Tag-Stück des Codeblocks vor dem öffnenden Tag der Auswahl ein und das schließende Tag-Stück des Codeblocks nach dem schließenden Tag der Auswahl.

Codeblöcke mit der Schleifenanweisung wiederholen

Um einen Abschnitt eines Codeblocks oder den gesamten Codeblock mehrmals zu wiederholen, verwende die folgende Syntax:

<@ loop (@@param1@@,@@param2@@) @> Code

block<@ endloop @>

Beim Anlegen von Serververhalten kannst du Schleifenkonstrukte verwenden, um einen Codeblock eine bestimmte Anzahl von Malen zu wiederholen. <@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> code block <@ endloop @>Die Schleifendirektive akzeptiert eine durch Kommas getrennte Liste von Parameterarrays als Argumente. In diesem Fall ermöglichen Parameterarray-Argumente einem Anwender, mehrere Werte für einen einzelnen Parameter anzugeben. Der sich wiederholende Text wird n-mal dupliziert, wobei n die Länge der Parameterarray-Argumente ist. Wenn mehr als ein Parameterarray-Argument angegeben wird, müssen alle Arrays dieselbe Länge haben. Bei der iten Auswertung der Schleife ersetzen die iten Elemente der Parameterarrays die zugehörigen Parameterinstanzen im Codeblock.

Wenn du ein Dialogfeld für das Serververhalten anlegst, kannst du ein Steuerelement zum Dialogfeld hinzufügen, mit dem der Seiten-Designer Parameterarrays anlegen kann. Dreamweaver enthält ein einfaches Array-Steuerelement, das du zum Anlegen von Dialogfeldern verwenden kannst. Dieses Steuerelement mit dem Namen Text Field Comma Separated List ist über den Server Behavior Builder verfügbar. Um Benutzeroberflächen-Elemente von größerer Komplexität zu erstellen, siehe die API-Dokumentation zum Anlegen eines Dialogfelds mit einem Steuerelement zum Erstellen von Arrays (beispielsweise einem Raster-Steuerelement).

Du kannst beliebig viele Bedingungsanweisungen oder eine Schleifenanweisung innerhalb einer Bedingungsanweisung verschachteln.Du kannst beispielsweise angeben, dass bei einem wahren Ausdruck eine Schleife ausgeführt werden soll.

Das folgende Beispiel zeigt, wie solche sich wiederholenden Codeblöcke zum Anlegen von Serververhalten verwendet werden können (das Beispiel ist ein ColdFusion-Verhalten zum Zugriff auf eine gespeicherte Prozedur):

<@ 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>

In diesem Beispiel kann das CFSTOREDPROC-Tag null oder mehr CFPROCPARAM-Tags enthalten. Ohne Unterstützung für die Loop-Direktive gibt es jedoch keine Möglichkeit, die CFPROCPARAM-Tags innerhalb des eingefügten CFSTOREDPROC-Tags einzuschließen. Würde dies als Serververhalten ohne die Verwendung der Loop-Direktive erstellt werden, müsstest du dieses Beispiel in zwei Teilnehmer aufteilen: ein Haupt-CFSTOREDPROC-Tag und ein CFPROCPARAM-Tag, dessen Teilnehmertyp mehrfach ist.

Mit der Loop-Direktive kannst du die gleiche Prozedur wie folgt schreiben:

<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>

Anmerkung

Zeilenschaltungen nach „@>“ werden ignoriert.

Wenn der Benutzer die folgenden Parameterwerte im Dialogfeld Server Behavior Builder eingegeben hat:

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"]

Das Server-Verhalten würde den folgenden Laufzeit-Code in die Seite einfügen:

<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>

Anmerkung

Parameter-Arrays können nicht außerhalb einer Schleife verwendet werden, außer als Teil eines bedingten Direktiven-Ausdrucks.

Variablen „_length“ und „ _index“ der Schleifenanweisung verwenden

Die Schleifendirektive enthält zwei integrierte Variablen, die du für eingebettete if-Bedingungen verwenden kannst. Es handelt sich um die Variablen _length und _index. Die _length-Variable entspricht der Länge der Arrays, die von der Schleifendirektive verarbeitet werden, während die _index-Variable dem aktuellen Index der Schleifendirektive entspricht. Um sicherzustellen, dass die Variablen nur als Direktiven erkannt werden und nicht als tatsächliche Parameter, die in die Schleife übergeben werden sollen, schließe keine der beiden Variablen in @@s ein.

Ein Beispiel für die Verwendung integrierter Variablen ist ihre Anwendung auf das import-Attribut der Seitendirektive.Das import-Attribut erfordert eine Trennung von Paketen durch Kommas.Wenn sich die loop-Direktive über das gesamte import-Attribut erstreckt, würdest du nur den Attributnamen import= bei der ersten Iteration der Schleife ausgeben—dies schließt die schließenden Anführungszeichen (") ein—und kein Komma bei der letzten Iteration der Schleife ausgeben. Mit der integrierten Variable kannst du dies folgendermaßen ausdrücken:

<@loop (@@Import@@)@>

<@ if(_index == 0)@>import="

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

<@ endif @>

<@endloop@>

Einen Parameter für das Server- Verhalten anfordern

Server-Verhalten erfordern oft, dass der Seiten-Designer einen Parameterwert bereitstellt. Dieser Wert muss eingefügt werden, bevor der Code des Server-Verhaltens in die Seite eingefügt wird.

Du erstellst das Dialogfeld, indem du die vom Designer bereitgestellten Parameter im Code definierst. Dann generierst du ein Dialogfeld für das Serververhalten, das den Seitendesigner zur Eingabe eines Parameterwerts auffordert.

Anmerkung

Ein Parameter wird automatisch zu deinem Codeblock hinzugefügt, wenn du angibst, dass dein Code relativ zu einem bestimmten Tag eingefügt werden soll, das der Seitendesigner ausgewählt hat (das heißt, du hast Relativ zu einem bestimmten Tag im Popup-Menü Code einfügen gewählt). Der Parameter fügt dem Dialogfeld des Verhaltens ein Tag-Menü hinzu, damit der Seitendesigner ein Tag auswählen kann.

Definiere den Parameter im Serververhaltenscode

Gib eine Parametermarkierung im Code ein, wo du den bereitgestellten Parameterwert einfügen möchtest. Der Parameter hat folgende Syntax:

@@parameterName@@

Schließe die formParam-Zeichenfolge in Parameter- markierungen (@@) ein:

<% Session("lang_pref") = Request.Form("@@formParam@@"); %>

Wenn das Server-Verhalten beispielsweise den folgenden Codeblock enthält:

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

Um vom Seitendesigner zu verlangen, dass er den Wert von Form_Object_Name angibt, schließe die Zeichenfolge in Parametermarkierungen (@@) ein:<% Session("lang_pref") = Request.Form("@@Form_Object_Name@@"); %>

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

Sie können auch die Zeichenfolge markieren und anschließend auf die Schaltfläche „Parameter in Codeblock einfügen“ klicken. Geben Sie einen Parameternamen ein und klicken Sie auf „OK“. Dreamweaver ersetzt jede Übereinstimmung mit der hervorgehobenen Zeichenfolge durch den in Parametermarkierungen eingeschlossenen Parameternamen.

Dreamweaver verwendet die in Parametermarkierungen eingeschlossenen Zeichenfolgen zur Beschriftung der Steuerelemente in dem von ihm erstellten Dialogfeld (siehe nachfolgendes Verfahren). Im Beispiel oben erstellt Dreamweaver ein Dialogfeld mit folgender Beschriftung:

Anmerkung

Parameternamen im Code von Serververhalten dürfen keine Leerzeichen enthalten. Deshalb können auch die Beschriftungen des Dialogfelds keine Leerzeichen enthalten. Wenn Sie Leerzeichen in die Beschriftung einfügen möchten, können Sie den erzeugten HTML-Code bearbeiten.

Geben Sie einen Namen für den Parameter ein

Erstelle ein Dialogfeld für dein Server- Verhalten, um den Parameterwert anzufordern

Klicke im Server Behavior Builder auf Weiter.
Um die Anzeigereihenfolge der Dialogfeld-Steuerelemente zu ändern, wähle einen Parameter aus und klicke auf die Nach-oben- und Nach-unten-Tasten.
Um die Steuerung eines Parameters zu ändern, wähle den Parameter aus und wähle eine andere Steuerung in der Spalte Anzeigen als aus.
Klicken Sie auf „OK“.

Dreamweaver generiert ein Dialogfeld mit einer beschrifteten Steuerung für jeden Designer-bereitgestellten Parameter, den du definiert hast.

Dialogfeld anzeigen

Klicke auf den Plus-Button (+) im Server Behaviors-Bedienfeld (Fenster > Server Behaviors) und wähle dein benutzerdefiniertes Server-Verhalten aus dem Popup-Menü aus.

Bearbeite das Dialogfeld, das du für das Serververhalten erstellt hast

Klicke im Bedienfeld Serververhalten (Fenster > Serververhalten) auf den Plus-Button (+) und wähle Serververhalten bearbeiten aus dem Popup-Menü aus.
Wähle dein Serververhalten aus der Liste aus und klicke auf Öffnen.
Klicken Sie auf „Weiter“.

Ein Dialogfeld wird angezeigt, das alle vom Designer bereitgestellten Parameter auflistet, die du in deinem Code definiert hast.

Um die Anzeigereihenfolge der Dialogfeldsteuerelemente zu ändern, wähle einen Parameter aus und klicke auf die Pfeile nach oben und unten.
Um die Steuerung eines Parameters zu ändern, wähle den Parameter aus und wähle eine andere Steuerung in der Spalte Anzeigen als aus.
Klicken Sie auf „OK“.

Serververhalten bearbeiten und ändern

Du kannst jedes Serververhalten bearbeiten, das mit dem Server Behavior Builder erstellt wurde, einschließlich Serververhalten, die du von der Dreamweaver Exchange Website herunterlädst, und andere von Drittanbietern entwickelte.

Wenn du ein Server-Verhalten auf eine Seite anwendest und dann das Verhalten in Dreamweaver bearbeitest, erscheinen Instanzen des alten Verhaltens nicht mehr im Bedienfeld Server-Verhalten. Das Bedienfeld Server-Verhalten durchsucht die Seite nach Code, der dem Code bekannter Server-Verhalten entspricht. Wenn sich der Code eines Server-Verhaltens ändert, erkennt das Bedienfeld frühere Versionen des Verhaltens auf dieser Seite nicht.

Die alten und neuen Versionen des Verhaltens im Bedienfeld beibehalten

Klicke auf den Plus-Button (+) im Bedienfeld Server-Verhalten (Fenster > Server-Verhalten), wähle Neues Server-Verhalten aus und erstelle eine Kopie des alten Server-Verhaltens.

Den Code eines Server-Verhaltens bearbeiten, das mit dem Server Behavior Builder erstellt wurde

Klicke im Bedienfeld Server-Verhalten (Fenster > Server-Verhalten) auf den Plus-Button (+) und wähle Server-Verhalten bearbeiten aus dem Popup-Menü aus.

Das Dialogfeld Server-Verhalten bearbeiten zeigt alle Verhalten für die aktuelle Server-Technologie an.

Wählen Sie das Serververhalten aus und klicken Sie auf „Bearbeiten“.
Wähle den entsprechenden Codeblock aus und ändere den Code, die Parametermarkierungen oder die Position des Codeblocks, der in Seiten eingefügt werden soll.
Wenn der geänderte Code keine vom Designer bereitgestellten Parameter enthält, klicke auf OK.

Dreamweaver generiert das Serververhalten ohne Dialogfeld neu.Das neue Server-Verhalten erscheint im Plus-Popup-Menü (+) des Bedienfelds Server-Verhalten.

Wenn der geänderte Code vom Designer bereitgestellte Parameter enthält, klicke auf Weiter.

Dreamweaver fragt dich, ob du ein neues Dialogfeld erstellen möchtest und dabei das alte überschreibst. Nimm deine Änderungen vor und klicke auf OK.

Dreamweaver speichert alle Änderungen in der EDML-Datei des Server-Verhaltens.

Richtlinien für die Kodierung

Im Allgemeinen sollte der Code deines Server-Verhaltens kompakt und robust sein. Web-Anwendung-Entwickler sind sehr empfindlich gegenüber dem Code, der zu ihren Seiten hinzugefügt wird. Befolge allgemein akzeptierte Programmierpraktiken für die Sprache des Dokumenttyps (ColdFusion, JavaScript, VBScript oder PHP). Bedenke beim Schreiben von Kommentaren die verschiedenen technischen Zielgruppen, die den Code verstehen müssen, wie Web- und Interaktions-Designer oder andere Web-Anwendung-Entwickler. Füge Kommentare hinzu, die den Zweck des Codes genau beschreiben und spezielle Anweisungen für die Einbindung in eine Seite.

Behalte die folgenden Programmierrichtlinien im Hinterkopf, wenn du Server-Verhalten erstellst:

Fehlerprüfung

Eine wichtige Anforderung. Der Code des Server-Verhaltens sollte Fehlerfälle sorgfältig behandeln.Versuchen Sie, alle möglichen Fälle abzudecken. Was ist zum Beispiel, wenn eine Parameteranfrage fehlschlägt? Was ist, wenn keine Datensätze aus einer Abfrage zurückgegeben werden?

Eindeutige Namen

Hilf dabei sicherzustellen, dass dein Code klar identifizierbar ist und Namenskonflikte mit vorhandenem Code vermeidet. Wenn beispielsweise die Seite eine Funktion namens hideLayer() und eine globale Variable namens ERROR_STRING enthält und dein Server-Behavior Code einfügt, der diese Namen ebenfalls verwendet, kann das Server-Behavior mit dem vorhandenen Code in Konflikt stehen.

Programmcode-Präfixe

Ermöglicht es dir, deine eigenen Laufzeit-Funktionen und globalen Variablen auf einer Seite zu identifizieren. Sie können beispielsweise Ihre Initialen verwenden. Verwende niemals das Präfix MM_, da es ausschließlich für Dreamweaver reserviert ist. Dreamweaver stellt allen Funktionen und globalen Variablen das Präfix MM_ voran, um zu verhindern, dass sie mit dem von dir geschriebenen Code in Konflikt stehen.

var MM_ERROR_STRING = "...";

function MM_hideLayer() {

Gleichartige Codeblöcke

damit der Code, den du schreibst, nicht zu sehr dem Code in anderen Blöcken ähnelt. Wenn ein Codeblock einem anderen Codeblock auf der Seite zu sehr ähnelt, könnte das Bedienfeld Server Behaviors fälschlicherweise den ersten Codeblock als Instanz des zweiten Codeblocks identifizieren (oder umgekehrt). Eine einfache Lösung ist, einem Codeblock einen Kommentar hinzuzufügen, um ihn eindeutiger zu machen.

Serververhalten testen

Dreamweaver Exchange empfiehlt, die folgenden Tests für jedes Serververhalten durchzuführen, das du erstellst:

  • Wenden Sie das Verhalten vom Bedienfeld „Serververhalten“ aus an. Falls es ein Dialogfeld hat, gib gültige Daten in jedes Feld ein und klicke auf OK. Stellen Sie sicher, dass beim Anwenden des Verhaltens keine Fehler auftreten. Überprüfe, dass der Laufzeit-Code für das Server-Behavior im Code- Inspector angezeigt wird.

  • Wende das Server-Behavior erneut an und gib ungültige Daten in jedes Feld des Dialogfelds ein. Versuche, das Feld leer zu lassen, große oder negative Zahlen zu verwenden, ungültige Zeichen (wie /, ?, :, *, usw.) zu verwenden und Buchstaben in numerischen Feldern zu verwenden. Du kannst Formular-Gültigkeitsprüfungsroutinen schreiben, um ungültige Daten zu verarbeiten (Validierungsroutinen erfordern manuelle Codierung, was über den Umfang dieses Buchs hinausgeht).

    Nach erfolgreicher Anwendung deines Server-Behaviors auf die Seite überprüfe Folgendes:

  • Überprüfe das Bedienfeld Server Behaviors, um sicherzustellen, dass der Name des Server-Behaviors in der Liste der zur Seite hinzugefügten Behaviors angezeigt wird.

  • Falls zutreffend, überprüfe, dass serverseitige Skriptsymbole auf der Seite angezeigt werden.Die generischen Symbole für serverseitige Skripts sind goldene Schilde. Um die Symbole zu sehen, aktiviere Unsichtbare Elemente (Ansicht > Visuelle Hilfsmittel > Unsichtbare Elemente).

  • In der Code-Ansicht (Ansicht > Code) überprüfe, dass kein ungültiger Code generiert wird.

    Wenn dein Server-Behavior zusätzlich Code ins dokument einfügt, der eine Verbindung zu einer Datenbank herstellt, erstelle eine Testdatenbank, um den ins dokument eingefügten Code zu testen. Überprüfe die Verbindung, indem du Abfragen definierst, die verschiedene Datensätze und unterschiedliche Größen von Datensätzen erzeugen.

    Lade schließlich die Seite auf den Server hoch und öffne sie in einem Browser. Zeige den HTML- Quellcode der Seite an und überprüfe, dass kein ungültiges HTML durch die Server-seitigen Skripte generiert wurde.