Hinweis:

Die Benutzeroberfläche wurde ab Dreamweaver CC vereinfacht. Daher kann es vorkommen, dass Sie einige der in diesem Artikel beschriebenen Optionen ab Dreamweaver CC nicht finden. Weitere Informationen finden Sie in diesem Artikel.

Benutzerdefinierte Serververhalten

In Dreamweaver sind mehrere Serververhalten integriert, mit denen Sie einer Site auf einfache Weise dynamische Funktionen verleihen können. Sie können die Funktionalität von Dreamweaver erweitern, indem Sie neue Serververhalten erstellen, die Ihren Entwicklungsbedürfnissen entsprechen, oder indem Sie Serververhalten von der Dreamweaver Exchange-Website herunterladen.

Bevor Sie eigene Serververhalten erstellen, sollten Sie auf der Dreamweaver Exchange-Website nachsehen, ob bereits jemand ein Serververhalten mit der für Ihre Website gewünschten Funktionalität entwickelt hat. Oft kommt es vor, dass ein anderer Entwickler ein Serververhalten erstellt und getestet hat, das Ihren Anforderungen entspricht.

Zugriff auf Dreamweaver Exchange

  1. In Dreamweaver können Sie folgendermaßen auf Dreamweaver Exchange zugreifen:
    • Wählen Sie „Hilfe“ > „Dreamweaver Exchange“.

    • Wählen Sie „Fenster“ > „Serververhalten“, klicken Sie auf die Schaltfläche mit dem Pluszeichen (+) und wählen Sie „Weitere Verhalten“.

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

  2. Melden Sie sich mit Ihrer Adobe-ID bei Exchange an. Falls Sie noch keine Dreamweaver Exchange-ID für sich erstellt haben, befolgen Sie die Anweisungen zum Eröffnen eines Adobe-Kontos.

Serververhalten oder andere Erweiterungen in Dreamweaver installieren

  1. Starten Sie den Extension Manager, indem Sie „Befehle“ > „Erweiterungen verwalten“ wählen.
  2. Wählen Sie im Extension Manager „Datei“ > „Erweiterung installieren“.

    Weitere Informationen finden Sie unter Extension Manager verwenden.

Arbeitsablauf für benutzerdefinierte Serververhalten

Wenn Sie als Webentwickler Erfahrung mit ColdFusion, JavaScript, VBScript oder PHP haben, können Sie benutzerdefinierte Serververhalten programmieren. Das Erstellen von Serververhalten umfasst folgende Einzelaufgaben:

  • Schreiben Sie einen oder mehrere Codeblöcke, die die erforderliche Aktion durchführen.

  • Legen Sie fest, wo der Codeblock in den HTML-Code der Seite eingefügt werden soll.

  • Falls das Serververhalten erfordert, dass ein Wert für einen Parameter angegeben wird: Erstellen Sie ein Dialogfeld, in dem der Webentwickler, der das Verhalten anwendet, aufgefordert wird, einen entsprechenden Wert zu liefern.

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

Serververhalten-Erstellung verwenden

Mit der Serververhalten-Erstellung können Sie die Codeblöcke hinzufügen, die vom Serververhalten in eine Seite eingefügt werden.

  1. Öffnen Sie das Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“), klicken Sie auf die Schaltfläche mit dem Pluszeichen (+) und wählen Sie „Neues Serververhalten“.
  2. Wählen Sie im Popupmenü „Dokumenttyp“ den Dokumenttyp aus, für den Sie das Serververhalten entwickeln.
  3. Geben Sie im Feld „Name“ einen Namen für das Serververhalten ein.
  4. Optional: Wenn Sie ein vorhandenes Serververhalten kopieren und dem Verhalten hinzufügen möchten, an dem Sie gerade arbeiten, wählen Sie die Option „Vorhandenes Serververhalten kopieren“ aus und dann im Popupmenü „Zu kopierendes Verhalten“ das gewünschte Serververhalten. Klicken Sie auf „OK“.

    Das Dialogfeld „Serververhalten-Erstellung“ wird angezeigt.

  5. Um einen neuen Codeblock hinzuzufügen, klicken Sie auf die Schaltfläche mit dem Pluszeichen (+), geben Sie einen Namen für den Codeblock ein und klicken Sie anschließend auf „OK“.

    Der von Ihnen eingegebene Name wird in der Serververhalten-Erstellung angezeigt, wobei die entsprechenden Skript-Tags im Feld „Codeblock“ sichtbar sind.

  6. Geben Sie im Feld „Codeblock“ den Laufzeit-Code ein, der zum Implementieren des Serververhaltens erforderlich ist.

    Hinweis:

    Wenn Sie im Feld „Codeblock“ Code eingeben, können Sie für jeden benannten Codeblock (z. B. myBehavior_block1, myBehavior_block2, myBehavior_blockn usw.) jeweils nur ein Tag oder einen Codeblock einfügen. Wenn mehrere Tags oder Codeblöcke einzugeben sind, müssen Sie für jedes Tag und jeden Codeblock einen separaten Codeblock erstellen. Sie können Code auch von anderen Seiten kopieren und einfügen.

  7. Setzen Sie die Einfügemarke an die Stelle im Codeblock, an der Sie den Parameter einfügen möchten, oder wählen Sie eine Zeichenfolge aus, die durch einen Parameter ersetzt werden soll.
  8. Klicken Sie auf die Schaltfläche „Parameter in Codeblock einfügen“.
  9. Geben Sie im Feld „Parametername“ einen Namen für den Parameter (z. B. Sitzung) ein und klicken Sie auf „OK“.

    Der Parameter wird in den Codeblock an der Stelle eingefügt, an der Sie die Einfügemarke vor dem Definieren des Parameters platziert haben. Wenn Sie eine Zeichenfolge markiert haben, werden alle Fundstellen dieser Zeichenfolge im Codeblock durch eine Parametermarkierung ersetzt (z. B. @@Session@@).

  10. Wählen Sie im Popupmenü „Code einfügen“ eine Option aus, die angibt, an welcher Stelle die Codeblöcke eingebettet werden sollen.
  11. Optional: Wenn Sie weitere Informationen zu dem Serververhalten eingeben möchten, klicken Sie auf die Schaltfläche „Erweitert“.
  12. Wenn Sie weitere Codeblöcke erstellen müssen, wiederholen Sie die Schritte 5 bis 11.
  13. Wenn das Serververhalten die Eingabe von Parametern erfordert, müssen Sie ein Dialogfeld erstellen, das Parameter von der Person entgegennimmt, die das Verhalten anwendet. Siehe nachstehender Link.
  14. Nachdem Sie alle erforderlichen Arbeitsschritte zum Erstellen des Serververhaltens ausgeführt haben, klicken Sie auf „OK“.

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

  15. Testen Sie das Serververhalten und vergewissern Sie sich, dass es ordnungsgemäß funktioniert.

Erweiterte Optionen

Nachdem Sie für jeden Codeblock den Quellcode und eine Einfügeposition festgelegt haben, ist das Serververhalten vollständig definiert. In den meisten Fällen brauchen Sie keine zusätzlichen Informationen anzugeben.

Fortgeschrittene Benutzer können die folgenden Optionen einstellen:

Kennzeichner

Hiermit legen Sie fest, ob der Codeblock als Kennzeichner behandelt werden soll.

Standardmäßig ist jeder Codeblock ein Kennzeichner. Wenn Dreamweaver einen Kennzeichner-Codeblock an einer beliebigen Stelle innerhalb eines Dokuments findet, wird das Verhalten im Bedienfeld „Serververhalten“ aufgelistet. Mit der Option „Kennzeichner“ geben Sie an, ob der Codeblock als Kennzeichner behandelt werden soll.

Mindestens einer der Codeblöcke eines Serververhaltens muss ein Kennzeichner sein. Ein Codeblock sollte kein Kennzeichner sein, wenn eine der folgenden Bedingungen erfüllt ist: Derselbe Block wird von einem anderen Serververhalten verwendet oder der Codeblock ist so einfach, dass er auf der Seite bereits zufällig enthalten sein kann.

Serververhalten-Titel

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

Wenn der Autor der Webseite im Bedienfeld „Serververhalten“ auf die Schaltfläche mit dem Pluszeichen (+) klickt, wird der Titel des neuen Serververhaltens im Popupmenü angezeigt. Wenn der Autor eine Instanz eines Serververhaltens auf ein Dokument anwendet, wird das Verhalten in der Liste der angewandten Verhalten im Bedienfeld „Serververhalten“ angezeigt. Im Feld „Serververhalten-Titel“ legen Sie den Inhalt des Plus-Popupmenüs (+) und der Liste der angewandten Verhalten fest.

Der in diesem Feld ursprünglich angezeigte Wert ist der Name, den Sie im Dialogfeld „Neues Serververhalten“ angegeben haben. Beim Definieren von Parametern wird der Name automatisch aktualisiert und die Parameter werden in Klammern nach dem Namen des Serververhaltens angezeigt.

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

Wenn der Benutzer den Standardwert übernimmt, werden alle Angaben, die sich vor den Klammern befinden, im Plus-Popupmenü (+) angezeigt (z. B. „Set Session Variable“). Der Name und die Parameter werden in der Liste der angewandten Verhalten angezeigt, z. B. „Set Session Variable ("abcd", "5")“.

Auszuwählender Codeblock

Hiermit legen Sie fest, welcher Codeblock ausgewählt wird, wenn das Verhalten im Bedienfeld „Serververhalten“ ausgewählt wird.

Wenn Sie ein Serververhalten anwenden, wird einer der Codeblöcke innerhalb des Verhaltens als „auszuwählender Codeblock“ gekennzeichnet. Wenn Sie das Serververhalten anwenden und anschließend das Verhalten im Bedienfeld „Serververhalten“ auswählen, wird der gekennzeichnete Block im Dokumentfenster ausgewählt. Standardmäßig wählt Dreamweaver den ersten Codeblock aus, der sich nicht oberhalb des Tags html befindet. Wenn sich alle Codeblöcke oberhalb des Tags html befinden, wird der erste Block ausgewählt. Fortgeschrittene Benutzer können festlegen, welcher Codeblock ausgewählt wird.

Codeblöcke erstellen

Die Codeblöcke, die Sie in der Serververhalten-Erstellung einrichten, werden in ein Serververhalten integriert, das im Bedienfeld „Serververhalten“ angezeigt wird. Bei dem Code kann es sich um einen beliebigen Laufzeit-Code für das angegebene Servermodell handeln. Wenn Sie beispielsweise ColdFusion als Dokumenttyp für Ihr benutzerdefiniertes Serververhalten wählen, muss der von Ihnen geschriebene Code ein gültiger ColdFusion-Code sein, der auf einem ColdFusion-Anwendungsserver ausführbar ist.

Sie können die Codeblöcke direkt in der Serververhalten-Erstellung einrichten oder den Code aus anderen Quellen kopieren und einfügen. Jeder Codeblock, den Sie in der Serververhalten-Erstellung einrichten, muss ein einzelnes Tag oder ein einzelner Skriptblock sein. Wenn Sie mehrere Tagblöcke einfügen müssen, teilen Sie diese in separate Codeblöcke auf.

Bedingungen in Codeblöcken

In Dreamweaver können Sie Codeblöcke mit Steueranweisungen entwickeln, die bedingt ausgeführt werden. Die Serververhalten-Erstellung verwendet die Anweisungen if, elseif und else und kann Serververhaltensparameter enthalten. Dadurch können Sie wechselnde Textblöcke basierend auf den OR-Beziehungen der Serververhaltensparameter eingeben.

Das folgende Beispiel zeigt die Anweisungen if, elseif und else. Die eckigen Klammern ([ ]) bezeichnen optionalen Code; das Sternchen (*) bezeichnet null oder mehr Instanzen. Soll ein Teil eines Codeblocks bzw. der gesamte Codeblock nur dann ausgeführt werden, wenn eine oder mehrere bestimmte Bedingungen erfüllt sind, verwenden Sie die folgende Syntax:

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

Als Bedingungsausdruck kann jeder JavaScript-Ausdruck dienen, der mit der JavaScript-Funktion eval() ausgewertet werden kann. Der Ausdruck kann einen Serververhalten-Parameter enthalten, der durch die Zeichenfolge „@@“ gekennzeichnet ist. (Die Zeichenfolge „@@“ dient zum Unterscheiden des Parameters von JavaScript-Variablen und -Schlüsselwörtern.)

Bedingte Anweisungen effektiv verwenden

Wenn Sie die Anweisungen if, else und elseif im XML-Tag insertText verwenden, wird der Mitgliedertext vorverarbeitet, um die if-Anweisungen aufzulösen und zu bestimmen, welcher Text in das Ergebnis aufgenommen werden soll. Die Anweisungen if und elseif verwenden als Argument den Ausdruck. Der Bedingungsausdruck ist der gleiche wie derjenige für JavaScript-Bedingungsausdrücke und kann auch Serververhaltensparameter enthalten. Mit Anweisungen wie dieser können Sie zwischen alternativen Codeblöcken basierend auf den Werten von bzw. den Beziehungen zwischen Serververhaltensparametern wählen.

Beispielsweise stammt der nachstehende 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 Codeblock beginnt mit <@ if (@@callableName@@ != '') @> und endet mit <@ endif @>. Wenn also ein Benutzer bei diesem Code im Dialogfeld Serververhalten für den Parameter @@callableName@@ einen Wert eingibt, der Parameterwert von @@callableName@@ also nicht leer ist oder den Wert „null“ repräsentiert ((@@callableName@@ != ''), dann wird der bedingte Codeblock durch die folgende Anweisung ersetzt:

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

Andernfalls wird der bedingte Codeblock durch diese Anweisung ersetzt:

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

Codeblöcke positionieren

Beim Erstellen von Codeblöcken mit der Serververhalten-Erstellung müssen Sie festlegen, an welcher Stelle ein Codeblock im HTML-Code der Seite eingefügt werden soll.

Wenn Sie beispielsweise einen Codeblock oberhalb des öffnenden <html>-Tags einfügen, müssen Sie anschließend die Position des Codeblocks relativ zu anderen Tags, Skripts und Serververhalten in diesem Abschnitt des HTML-Codes der Seite angeben. Häufig werden Verhalten entweder vor oder nach Datensatzgruppenabfragen eingefügt, die sich möglicherweise ebenfalls im Seitencode vor dem Anfangs-Tag <html> befinden.

Wenn Sie im Popupmenü „Code einfügen“ eine Positionierungsoption wählen, ändern sich die im Popupmenü „Relative Position“ verfügbaren Optionen, sodass nur die für den entsprechenden Teil der Seite relevanten Optionen zur Auswahl stehen. Wenn Sie beispielsweise im Popupmenü „Code einfügen“ die Option „Vor dem Tag <html>“ gewählt haben, werden im Popupmenü „Relative Position“ nur die Optionen angezeigt, die auf diesen Teil der Seite zutreffen.

Die folgende Tabelle zeigt die verfügbaren Einfügeoptionen für Codeblock und die jeweils verfügbaren relativen Positionierungsoptionen:

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ählen Sie im Popupmenü „Tag“ ein Tag aus und dann eine der Positionierungsoptionen für das Tag.

Relativ zur Auswahl

Vor der Auswahl

Nach der Auswahl

Auswahl ersetzen

Um die Auswahl legen

Wenn Sie eine benutzerdefinierte Position festlegen möchten, müssen Sie dem Codeblock eine Gewichtung zuweisen. Verwenden Sie die Option „Benutzerdefinierte Position“, wenn Sie mehrere Codeblöcke in einer bestimmten Reihenfolge einfügen müssen. Wenn Sie beispielsweise nach den Codeblöcken, die Datensatzgruppen öffnen, eine geordnete Reihe von drei Codeblöcken hinzufügen möchten, weisen Sie dem ersten Block die Gewichtung 60, dem zweiten Block die Gewichtung 65 und dem dritten Block die Gewichtung 70 zu.

Standardmäßig wird mit Dreamweaver allen Datensatz-öffnenden Codeblöcken, die oberhalb des<html>-Tags eingefügt werden, eine Gewichtung von 50 zugeordnet. Wenn mehrere Blöcke dieselbe Gewichtung haben, legt Dreamweaver die Reihenfolge der Blöcke auf Zufallsbasis fest.

Codeblöcke positionieren (allgemeine Anweisungen)

  1. Erstellen Sie mit der Serververhalten-Erstellung einen Codeblock.
  2. Wählen Sie im Dialogfeld „Serververhalten-Erstellung“ im Popupmenü „Code einfügen“ eine Position aus, an der der Codeblock eingefügt werden soll.
  3. Wählen Sie im Dialogfeld „Serververhalten-Erstellung“ eine Position relativ zu der Position aus, die Sie im Popupmenü „Code einfügen“ gewählt haben.
  4. Wenn der Codeblock fertig ist, klicken Sie auf „OK“.

    Das Serververhalten wird im Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“) aufgeführt. Klicken Sie auf die Schaltfläche mit dem Pluszeichen (+) um das Serververhalten anzuzeigen.

  5. Testen Sie das Serververhalten und vergewissern Sie sich, dass es ordnungsgemäß funktioniert.

Codeblöcke relativ zu anderen Tags auf der Seite positionieren

  1. Wählen Sie im Popupmenü „Code einfügen“ die Option „Relativ zu einem bestimmten Tag“.
  2. Geben Sie im Feld „Tag“ das Tag ein oder wählen Sie im Popupmenü ein Tag aus.

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

  3. Geben Sie eine Position relativ zu dem Tag an, indem Sie im Popupmenü „Relative Position“ eine Option wählen.

Codeblöcke relativ zu einem vom Autor der Seite gewählten Tag positionieren

  1. Wählen Sie im Popupmenü „Code einfügen“ die Option „Relativ zur Auswahl“.
  2. Geben Sie eine Position relativ zur Auswahl an, indem Sie im Popupmenü „Relative Position“ eine Option wählen.

    Sie können den Codeblock direkt vor oder direkt nach der Auswahl einfügen. Sie können die Auswahl auch durch Ihren Codeblock ersetzen oder den Codeblock um die Auswahl legen.

    Wenn Sie den Codeblock um die Auswahl legen möchten, darf die Auswahl lediglich aus einem Anfangs-Tag und einem Schluss-Tag bestehen (ohne Text zwischen den beiden Tags), wie im folgenden Beispiel:

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

    Fügen Sie den Startteil des Codeblocks vor dem Anfangs-Tag der Auswahl ein und den Schlussteil des Codeblocks nach dem Schluss-Tag der Auswahl.

Codeblöcke mit der Schleifenanweisung wiederholen

Soll ein Teil eines Codeblocks bzw. der gesamte Codeblock mehrmals wiederholt werden, verwenden Sie die folgende Syntax:

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

Wenn Sie Serververhalten erstellen, können Sie mithilfe von Schleifenkonstruktionen einen Codeblock eine bestimmte Anzahl von Malen wiederholen. <@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> code block <@ endloop @>Die Schleifenanweisung akzeptiert eine durch Kommas getrennte Liste von Parameter-Arrays als Argumente. In diesem Fall ermöglichen Parameter-Array-Argumente es dem Benutzer, mehrere Werte für einen Parameter anzugeben. Der sich wiederholende Text wird n Mal dupliziert, wobei n die Länge der Parameter-Array-Argumente ist. Falls mehrere Parameter-Array-Argumente angegeben werden, müssen alle Arrays die gleiche Länge besitzen. Bei der i-ten Auswertung der Schleife, ersetzt das i-te Element des Parameter-Arrays die verknüpften Instanzen im Codeblock.

Wenn Sie ein Dialogfeld für das Serververhalten erstellen, können Sie dem Dialogfeld ein Steuerelement hinzufügen, mit dem der Autor der Seite Parameter-Arrays erstellen kann. Dreamweaver enthält ein einfaches Array-Steuerelement, mit dem Sie Dialogfelder erstellen können. Es lautet „Textfeldliste mit Kommatrennzeichen“ und ist in der Serververhalten-Erstellung verfügbar. Um komplexere Benutzeroberflächenelemente zu erstellen, lesen Sie in der API-Dokumentation nach, wie ein Dialogfeld mit einem Steuerelement zum Erstellen von Arrays (z. B. ein Rastersteuerelement) erstellt wird.

In einer bedingten Anweisung können Sie eine beliebige Anzahl von Bedingungen oder eine Schleifenanweisung verschachteln. Beispielsweise können Sie festlegen, dass eine Schleife ausgeführt wird, wenn ein Ausdruck wahr ist.

Im folgenden Beispiel wird dargestellt, wie mithilfe solcher sich wiederholender Codeblöcke Serververhalten erstellt werden können (es handelt sich dabei um ein Beispiel eines ColdFusion-Verhaltens für den 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 Tag CFSTOREDPROC null oder mehr CFPROCPARAM-Tags enthalten. Ohne Unterstützung der Schleifenanweisung besteht jedoch keine Möglichkeit, die CFPROCPARAM-Tags in das eingefügte CFSTOREDPROC-Tag einzubeziehen. Wenn dies als Serververhalten ohne Verwendung der Schleifenanweisung erstellt werden sollte, müssten Sie dieses Beispiel in die folgenden zwei Mitglieder aufteilen: ein CFSTOREDPROC-Haupt-Tag und ein CFPROCPARAM-Tag, dessen Mitgliedertyp mehrfach ist.

Unter Verwendung der Schleifenanweisung können Sie 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>

Hinweis:

Zeilenschaltungen nach „@>“ werden ignoriert.

Angenommen, der Benutzer hat die folgenden Parameterwerte in das Dialogfeld „Serververhalten“ eingegeben:

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

In diesem Fall würde das Serververhalten den folgenden Laufzeitcode 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>

Hinweis:

Parameter-Arrays dürfen außerhalb einer Schleifenanweisung nur als Teil eines bedingten Anweisungsausdrucks verwendet werden.

Variablen „_length“ und „ _index“ der Schleifenanweisung verwenden

Die Schleifenanweisung besitzt zwei integrierte Variablen, die Sie für eingebettete if-Bedingungen verwenden können. Es handelt sich um die Variablen _length und _index. Die Variable _length wertet die Länge der von der Schleifenanweisung verarbeiteten Arrays aus, während die Variable _index den aktuellen Index der Schleifenanweisung auswertet. Um sicherzustellen, dass die Variablen nur als Anweisungen und nicht als die Parameter, erkannt werden, die der Schleife zu übergeben sind, schließen Sie keine von beiden in @@-Zeichen ein.

Ein Beispiel für den Einsatz integrierter Variablen ist ihre Anwendung auf das Attribut import der Seitenanweisung. Bei dem Attribut import müssen Pakete durch Kommas voneinander getrennt werden. Wenn sich die loop-Anweisung über das gesamte Attribut import erstreckt, würden Sie den Attributnamen import= nur bei der ersten Iteration der Schleife ausgeben (dabei wären die schließenden Anführungszeichen (") enthalten), und kein Komma bei der letzten Iteration. Mit der integrierten Variablen können Sie dies wie folgt ausdrücken:

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

Parameter für das Serververhalten anfordern

Serververhalten erfordern häufig, dass der Autor der Seite einen Parameterwert angibt. Dieser Wert muss eingefügt werden, bevor der Code des Serververhaltens in die Seite eingefügt wird.

Sie erstellen das Dialogfeld, indem Sie die Parameter definieren, die der Autor der Webseite dem Code hinzufügen muss. Anschließend erstellen Sie ein Dialogfeld für das Serververhalten, das den Autor der Seite zur Eingabe eines Parameterwerts auffordert.

Hinweis:

Ein Parameter wird dem Codeblock ohne Ihr Zutun hinzugefügt, wenn Sie angeben, dass der Code relativ zu einem spezifischen Tag eingefügt werden soll, das der Autor der Webseite angibt (wenn Sie also im Popupmenü „Code einfügen“ die Option „Relativ zu einem bestimmten Tag“ gewählt haben). Der Parameter fügt dem Dialogfeld des Verhaltens ein Tag-Menü hinzu, aus dem der Autor der Webseite ein Tag wählen kann.

Parameter im Code des Serververhaltens definieren

  1. Geben Sie im Code an der Stelle, an der der angegebene Parameterwert eingefügt werden soll, eine Parametermarkierung ein. Der Parameter hat die folgende Syntax:
    @@parameterName@@
  2. Schließen Sie die Zeichenfolge formParam in Parameterkennungen (@@) ein:
    <% Session(“lang_pref”) = Request.Form(“@@formParam@@”); %>

    Angenommen, das Serververhalten enthält den folgenden Codeblock:

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

    Wenn der Autor der Seite zur Angabe des Werts für Form_Object_Name aufgefordert werden soll, schließen Sie 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:

Hinweis:

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
Geben Sie einen Namen für den Parameter ein

Dialogfeld für das Serververhalten zur Anforderung des Parameterwerts erstellen

  1. Klicken Sie in der Serververhalten-Erstellung auf „Weiter“.
  2. Um die Reihenfolge der im Dialogfeld angezeigten Steuerelemente zu ändern, wählen Sie einen Parameter aus und klicken dann auf den nach oben bzw. nach unten gerichteten Pfeil.
  3. Um das Steuerelement eines Parameters zu ändern, wählen Sie zuerst den Parameter und dann in der Spalte „Anzeigen als“ ein anderes Steuerelement aus.
  4. Klicken Sie auf „OK“.

    Dreamweaver erzeugt ein Dialogfeld mit einem beschrifteten Steuerelement für jeden von Ihnen definierten Parameter, den der Autor der Seite angegeben muss.

Dialogfeld anzeigen

  1. Klicken Sie im Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“) auf die Schaltfläche mit dem Pluszeichen (+) und wählen Sie dann im Popupmenü das benutzerdefinierte Serververhalten aus.

Erstelltes Dialogfeld für das Serververhalten bearbeiten

  1. Klicken Sie im Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“) auf die Schaltfläche mit dem Pluszeichen (+) und wählen Sie im Popupmenü die Option „Serververhalten bearbeiten“.
  2. Wählen Sie das Serververhalten in der Liste aus und klicken Sie auf „Öffnen“.
  3. Klicken Sie auf „Weiter“.

    In dem nun eingeblendeten Dialogfeld werden alle vom Autor der Webseite bereitzustellenden Parameter, die Sie im Code definiert haben, aufgelistet.

  4. Um die Reihenfolge der im Dialogfeld angezeigten Steuerelemente zu ändern, wählen Sie einen Parameter aus und klicken dann auf den nach oben bzw. nach unten gerichteten Pfeil.
  5. Um das Steuerelement eines Parameters zu ändern, wählen Sie zuerst den Parameter und dann in der Spalte „Anzeigen als“ ein anderes Steuerelement aus.
  6. Klicken Sie auf „OK“.

Serververhalten bearbeiten und ändern

Alle mit der Serververhalten-Erstellung eingerichteten Serververhalten können bearbeitet werden. Dazu gehören auch Serververhalten, die Sie von der Dreamweaver Exchange-Website heruntergeladen oder von Drittanbietern bezogen haben.

Wenn Sie ein Serververhalten auf eine Seite anwenden und anschließend in Dreamweaver bearbeiten, werden die Instanzen des alten Verhaltens nicht mehr im Bedienfeld „Serververhalten“ angezeigt. Das Bedienfeld „Serververhalten“ durchsucht die Seite nach Code, der mit dem Code von bekannten Serververhalten übereinstimmt. Wenn der Code eines Serververhaltens geändert wird, werden die früheren Versionen des Verhaltens auf dieser Seite von dem Bedienfeld nicht mehr erkannt.

Alte und neue Version von Verhalten im Bedienfeld beibehalten

  1. Klicken Sie im Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“) auf die Schaltfläche mit dem Pluszeichen (+), wählen Sie „Neues Serververhalten“ und erstellen Sie eine Kopie des alten Serververhaltens.

Code eines mit der Serververhalten-Erstellung erstellten Serververhaltens bearbeiten

  1. Klicken Sie im Bedienfeld „Serververhalten“ („Fenster“ > „Serververhalten“) auf die Schaltfläche mit dem Pluszeichen (+) und wählen Sie im Popupmenü die Option „Serververhalten bearbeiten“.

    Im Dialogfeld „Serververhalten bearbeiten“ werden alle Verhalten für die aktuelle Servertechnologie angezeigt.

  2. Wählen Sie das Serververhalten aus und klicken Sie auf „Bearbeiten“.
  3. Wählen Sie den entsprechenden Codeblock aus und bearbeiten Sie dann den Code, die Parametermarkierungen oder die Position des Codeblocks, der bzw. die in die Seiten eingefügt werden soll(en).
  4. Wenn der modifizierte Code keine Parameter vom Autor der Webseite enthält, klicken Sie auf „OK“.

    Dreamweaver erstellt das Serververhalten ohne Dialogfeld neu. Das neue Serververhalten wird im Plus-Popupmenü (+) des Bedienfelds „Serververhalten“ angezeigt.

  5. Wenn der modifizierte Code Parameter vom Autor der Webseite enthält, klicken Sie auf „Weiter“.

    Dreamweaver fragt Sie, ob Sie ein neues Dialogfeld erstellen und das vorhandene Dialogfeld überschreiben möchten. Nehmen Sie die gewünschten Änderungen vor und klicken Sie auf „OK“.

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

Richtlinien für die Kodierung

Im Allgemeinen sollte der Code des Serververhaltens kompakt und robust geschrieben werden. Autoren von Webanwendungen sind bezüglich des Codes, der ihren Seiten hinzugefügt wird, sehr empfindlich. Beachten Sie beim Schreiben von Code die für die Sprache des Dokumenttyps (ColdFusion, JavaScript, VBScript oder PHP) geltenden Standards. Wenn Sie Kommentare schreiben, behalten Sie die unterschiedlichen technischen Zielgruppen im Auge, die den Code verstehen müssen, z. B. Web- und Interaktionsdesigner oder andere Webanwendungsentwickler. Fügen Sie Kommentare ein, die den Zweck des Codes genau beschreiben, sowie spezielle Anweisungen dafür, wie der Code in die Seite einzufügen ist.

Beachten Sie beim Erstellen von Serververhalten die folgenden Kodierungsrichtlinien:

Fehlerprüfung

Eine wichtige Anforderung. Der Code des Serververhaltens sollte mit Fehlersituationen umgehen können. Versuchen Sie, alle möglichen Fälle abzudecken. Zum Beispiel: Was geschieht, wenn die Anforderung eines Parameters nicht erfolgreich ist? Was geschieht, wenn von einer Abfrage keine Datensätze zurückgegeben werden?

Eindeutige Namen

Eindeutige Namen tragen dazu bei, dass der Programmcode leicht zu identifizieren ist und keine Konflikte mit vorhandenem Code auftreten. Wenn Ihre Seite beispielsweise eine Funktion mit dem Namen hideLayer() und eine globale Variable mit dem Namen ERROR_STRING enthält und das Serververhalten Code mit denselben Namen einfügt, können Konflikte zwischen Serververhalten und bereits vorhandenem Code auftreten.

Programmcode-Präfixe

Sie ermöglichen es, eigene Laufzeitfunktionen und globale Variablen auf einer Seite leicht wiederzuerkennen. Sie können beispielsweise Ihre Initialen verwenden. Verwenden Sie nicht das Präfix MM_, da es zur Verwendung in Dreamweaver reserviert ist. Alle Funktionen und globalen Variablen von Dreamweaver beginnen mit dem Präfix MM_, um Konflikte mit benutzerdefiniertem Code zu vermeiden.

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

Gleichartige Codeblöcke

Vermeiden Sie gleichartige Codeblöcke, damit Ihr Code dem Programmcode in anderen Blöcken nicht zu stark ähnelt. Wenn ein Codeblock zu stark mit einem anderen Codeblock auf derselben Seite übereinstimmt, kann der erste Codeblock vom Bedienfeld „Serververhalten“ fälschlicherweise für eine Instanz des zweiten Codeblocks (oder umgekehrt) gehalten werden. Eine einfache Lösung für dieses Problem besteht darin, einem Codeblock einen Kommentar hinzuzufügen, um ihn eindeutig zu machen.

Serververhalten testen

Dreamweaver Exchange empfiehlt, für jedes von Ihnen erstellte Serververhalten die folgenden Tests durchzuführen:

  • Wenden Sie das Verhalten vom Bedienfeld „Serververhalten“ aus an. Wenn das Verhalten ein Dialogfeld hat, geben Sie in jedes Feld gültige Daten ein und klicken Sie auf „OK“. Stellen Sie sicher, dass beim Anwenden des Verhaltens keine Fehler auftreten. Vergewissern Sie sich, dass der Laufzeitcode für das Serververhalten im Codeinspektor angezeigt wird.

  • Wenden Sie das Serververhalten erneut an und geben Sie dabei in jedes Feld des Dialogfelds ungültige Daten ein. Lassen Sie Felder leer oder geben Sie große oder negative Zahlen, ungültige Zeichen (beispielsweise /, ?, :, *) oder Buchstaben in numerische Felder ein. Sie können Überprüfungsroutinen zur Behandlung ungültiger Daten schreiben. (Überprüfungsroutinen müssen manuell programmiert werden, was jedoch über den Rahmen dieses Handbuchs hinausgeht.)

    Nachdem Sie das Serververhalten erfolgreich auf die Seite angewandt haben, überprüfen Sie Folgendes:

  • Vergewissern Sie sich im Bedienfeld „Serververhalten“, dass der Name des Serververhaltens in der Liste der Verhalten steht, die der Seite hinzugefügt wurden.

  • Vergewissern Sie sich, dass Symbole für serverseitige Skripts auf der Seite angezeigt werden (falls zutreffend). Die generischen Symbole für serverseitige Skripts sind goldene Schilde. Um die Symbole einzublenden, aktivieren Sie die Option „Unsichtbare Elemente“ („Ansicht“ > „Visuelle Hilfsmittel“ > „Unsichtbare Elemente“).

  • Vergewissern Sie sich in der Codeansicht („Ansicht“ > „Code“), dass kein ungültiger Code erzeugt wird.

    Wenn Ihr Serververhalten Code in das Dokument einfügt, um eine Verbindung mit einer Datenbank herzustellen, sollten Sie außerdem eine Testdatenbank erstellen, um den in das Dokument eingefügten Code zu testen. Überprüfen Sie die Verbindung, indem Sie Abfragen erstellen, die unterschiedliche Gruppen von Daten und unterschiedlich große Datengruppen zurückgeben.

    Übertragen Sie zum Schluss die Seite an den Server und öffnen Sie sie in einem Browser. Sehen Sie sich den HTML-Quellcode der Seite an und stellen Sie sicher, dass von den serverseitigen Skripts kein ungültiger HTML-Code generiert wurde.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie