Aangepast servergedrag toevoegen in Dreamweaver

Laatst bijgewerkt op 25 apr. 2024
Notitie

De gebruikersinterface van nieuwere versies van Dreamweaver is vereenvoudigd. Daarom zijn sommige opties die in dit artikel worden beschreven, niet beschikbaar in nieuwere versies van Dreamweaver. Meer informatie vindt u in dit artikel.

Over aangepast servergedrag

Dreamweaver wordt geleverd met een set ingebouwde servergedragingen waarmee je eenvoudig dynamische mogelijkheden aan een site kunt toevoegen.Je kunt de Dreamweaver-functionaliteit uitbreiden door server behaviors te maken die bij je ontwikkelingsbehoeften passen, of door server behaviors te verkrijgen van de Dreamweaver Exchange website.

Voordat je je eigen server behaviors maakt, kun je het beste de Dreamweaver Exchange website controleren om te zien of een andere partij al een server behavior heeft gemaakt die de functionaliteit biedt die je graag aan je website wilt toevoegen. Vaak heeft een derde partij-ontwikkelaar een server behavior gemaakt en getest die aan je behoeften voldoet.

Toegang krijgen tot Dreamweaver Exchange

In Dreamweaver krijg je toegang tot Dreamweaver Exchange op een van deze manieren:
  • Selecteer Help > Dreamweaver Exchange.

  • Selecteer Window > Server Behaviors, klik op de Plus (+) knop en selecteer Get More Server Behaviors.

De Dreamweaver Exchange-webpagina wordt in uw browser geopend.

Log in op de Exchange met je Adobe ID, of, als je nog geen Dreamweaver Exchange ID voor jezelf hebt gemaakt, volg de instructies om een Adobe account te openen.

Een server behavior of andere extensie installeren in Dreamweaver

Start Extension Manager door Commands > Manage Extensions te selecteren.
Selecteer File > Install Package in Extension Manager.

Zie Extension Manager gebruiken voor meer informatie.

Workflow voor aangepast servergedrag

Als je een web-ontwikkelaar bent die ervaring heeft met ColdFusion, JavaScript, VBScript of PHP, kun je je eigen server behaviors schrijven. De stappen om een server behavior te maken omvatten de volgende taken:

  • Schrijf een of meer codeblokken die de vereiste actie uitvoeren.

  • Geef aan waar het codeblok moet worden ingevoegd binnen de HTML-code van de pagina.

  • Als de server behavior vereist dat er een waarde wordt opgegeven voor een parameter, maak dan een dialoogvenster dat de web-ontwikkelaar die de behavior toepast vraagt om een juiste waarde op te geven.

  • Test het servergedrag voordat anderen het kunnen toepassen.

De opbouwfunctie voor servergedrag gebruiken

Gebruik de Server Behavior Builder om het codeblok of de codeblokken toe te voegen die het gedrag in een pagina invoegt.

In het Server Behaviors-paneel (Window > Server Behaviors), klik op de Plus (+) knop en selecteer New Server Behavior.
Selecteer in het Document Type pop-upmenu het documenttype waarvoor je de server behavior ontwikkelt.
Voer in het vak Naam een naam voor het servergedrag in.
(Optioneel) Om een bestaande server behavior te kopiëren en toe te voegen aan de behavior die je aan het maken bent, selecteer je de Copy Existing Server Behavior optie en vervolgens selecteer je de server behavior in het Behavior to Copy pop-upmenu. Klik op OK.

Het dialoogvenster Opbouwfunctie voor servergedrag wordt weergegeven.

Om een nieuw codeblok toe te voegen, klikt u op de plusknop (+), voert u een naam in voor het codeblok en klikt u op OK.

De naam die je invoert verschijnt in de Server Behavior Builder, met de juiste scripttags zichtbaar in het Code block vak.

Voer in het Code Block vak de run-time code in die nodig is om de server behavior te implementeren.
Notitie

Bij het invoeren van code in het Code Block vak kun je slechts een enkele tag of codeblok invoegen voor elk genoemd codeblok (bijvoorbeeld myBehavior_block1, myBehavior_block2, myBehavior_blockn, enz.). Als je meerdere tags of codeblokken moet invoeren, maak dan een afzonderlijk codeblok voor elk ervan.Je kunt ook code kopiëren en plakken van andere pagina's.

Plaats de invoegpositie in het codeblok waar je de parameter wilt invoegen of selecteer een tekenreeks om te vervangen door een parameter.
Klik op de knop Parameter in codeblok invoegen.
Voer een naam in voor de parameter in het vak Parameternaam (bijvoorbeeld Session) en klik op OK.

De parameter wordt ingevoegd in het codeblok op de locatie waar je de invoegpositie hebt geplaatst voordat je de parameter definieerde. Als je een tekenreeks hebt geselecteerd, wordt elke instantie van de geselecteerde tekenreeks in het codeblok vervangen door een parametermarkering (bijvoorbeeld @@Session@@).

Selecteer een optie in het pop‑upmenu Code invoegen om aan te geven waar de codeblokken moeten worden ingesloten.
(Optioneel) Klik op de knop Geavanceerd om aanvullende informatie over het servergedrag op te geven.
Als u meer codeblokken wilt maken, herhaalt u de stappen 5 tot en met 11.
Als het servergedrag vereist dat er parameters aan worden geleverd, moet je een dialoogvenster maken dat parameters accepteert van de persoon die het gedrag toepast. Zie de link beneden.
Klik op OK nadat je de vereiste stappen hebt uitgevoerd om het servergedrag te maken.

Het servergedrag wordt in het paneel Servergedrag weergegeven.

Test het servergedrag en zorg ervoor dat het correct werkt.

Geavanceerde opties

Nadat je de broncode en invoeglocatie voor elk codeblok hebt opgegeven, is het servergedrag volledig gedefinieerd. In de meeste gevallen hoef je geen aanvullende informatie op te geven.

Als je een gevorderde gebruiker bent, kun je een van de volgende opties instellen:

Id

Geeft aan of het codeblok moet worden behandeld als een identificator.

Standaard is elk codeblok een identifier. Als Dreamweaver ergens in een document een identificatorcodeblok vindt, wordt het gedrag weergegeven in het paneel Servergedragingen. Gebruik de optie Identificator om aan te geven of het codeblok moet worden behandeld als een identificator.

Ten minste een van de codeblokken van het servergedrag moet een identificator zijn. Een codeblok mag geen identificator zijn als een van de volgende voorwaarden van toepassing is: hetzelfde codeblok wordt gebruikt door een ander servergedrag; of het codeblok is zo eenvoudig dat het natuurlijk op de pagina zou kunnen voorkomen.

Titel servergedrag

De titel van het gedrag zoals deze in het paneel Servergedrag wordt weergegeven.

Wanneer de paginaontwerper op de knop Plus (+) in het paneel Servergedragingen klikt, verschijnt de titel van het nieuwe servergedrag in het pop‑up‑ menu. Wanneer een ontwerper een instantie van een servergedrag toepast op een document, verschijnt het gedrag in de lijst van toegepaste gedragingen in het paneel Servergedragingen. Gebruik het vak Serverbedragtitel om de content van het Plus (+) pop‑upmenu en de lijst van toegepaste gedragingen op te geven.

De oorspronkelijke waarde in het vak is de naam die u hebt opgegeven in het dialoogvenster Nieuw servergedrag.Terwijl parameters worden gedefinieerd, wordt de naam automatisch bijgewerkt zodat de parameters tussen haakjes na de naam van het servergedrag verschijnen.

Sessievariabele instellen (@@Name@@, @@Value@@)

Als de gebruiker de standaardwaarde accepteert, verschijnt alles voor de haakjes in het Plus (+) pop‑upmenu (bijvoorbeeld Sessievariabele instellen). De naam plus de parameters verschijnen in de lijst van toegepaste gedragingen—bijvoorbeeld Sessievariabele instellen ("abcd", "5").

Codeblok dat moet worden geselecteerd

Specificeert welk codeblok wordt geselecteerd wanneer de gebruiker het gedrag selecteert in het deelvenster Server Behaviors.

Wanneer je een servergedrag toepast, wordt een van de codeblokken binnen het gedrag aangewezen als het 'te selecteren codeblok'. Als je het servergedrag toepast en vervolgens het gedrag selecteert in het deelvenster Servergedrag, wordt het aangewezen blok geselecteerd in het documentvenster.Standaard selecteert Dreamweaver het eerste codeblok dat niet boven de html-tag staat. Als alle code blokken boven de html-tag staan, wordt de eerste geselecteerd. Gevorderde gebruikers kunnen aangeven welk codeblok het geselecteerde is.

Codeblokken maken

De codeblokken die je maakt in de Server Behavior Builder worden ingekapseld in een servergedrag dat verschijnt in het deelvenster Server Behaviors. De code kan elke geldige runtime-code zijn voor het gespecificeerde servermodel. Als je bijvoorbeeld ColdFusion kiest als documenttype voor je aangepaste servergedrag, moet de code die je schrijft geldige ColdFusion-code zijn die draait op een ColdFusion-applicatieserver.

Je kunt de codeblokken rechtstreeks maken in de Server Behavior Builder of je kunt de code kopiëren en plakken van andere bronnen.Elk codeblok dat je maakt in de Server Behavior Builder moet een enkele tag of scriptblok zijn. Als je meerdere tagblokken moet invoegen, splits ze dan in afzonderlijke codeblokken.

Voorwaarden in codeblokken

Dreamweaver stelt je in staat codeblokken te ontwikkelen die controlestructuren bevatten die conditioneel worden uitgevoerd.De Server Behavior Builder gebruikt if-, elseif- en else-statements, en kan ook serverbehavior-parameters bevatten. Hierdoor kun je alternatieve tekstblokken invoegen gebaseerd op de waarden van OF-relaties tussen serverbehavior-parameters.

Het volgende voorbeeld toont de if-, elseif- en else-statements. De vierkante haken ([ ]) duiden optionele code aan en het sterretje (*) duidt nul of meer instanties aan. Om een deel van een codeblok of het hele codeblok alleen uit te voeren als een bepaalde voorwaarde of voorwaarden van toepassing zijn, gebruik je de volgende syntaxis:

<@ if (expression1) @> conditional

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

conditional text3]<@ endif @>

Voorwaarde expressies kunnen elke JavaScript-expressie zijn die kan worden geëvalueerd met behulp van de JavaScript eval()-functie, en kunnen een serverbehavior-parameter bevatten gemarkeerd door @@'s. (De @@'s onderscheiden de parameter van JavaScript-variabelen en sleutelwoorden.)

Voorwaardelijke expressies doeltreffend gebruiken

Bij het gebruiken van if-, else- en elseif-richtlijnen binnen de insertText XML-tag, wordt de deelnemer tekst voorbewerkt om de if-richtlijnen op te lossen en te bepalen welke tekst in het resultaat moet worden opgenomen. De if- en elseif-richtlijnen nemen de expressie als argument. De voorwaardexpressie is hetzelfde als die voor JavaScript-voorwaardexpressies, en kan ook serverbehavior-parameters bevatten. Richtlijnen zoals deze stellen je in staat om te kiezen tussen alternatieve codeblokken gebaseerd op de waarden van, of relaties tussen, serverbehaviorparameters.

Bijvoorbeeld, de volgende JSP-code komt uit een Dreamweaver-serverbehavior die een voorwaardelijk codeblok gebruikt:

@@rsName@@.close();

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

@@callableName@@.execute();

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

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

<@ endif @>

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

Het voorwaardelijke codeblok begint met <@ if (@@callableName@@ != '') @> en eindigt met <@ endif @>. Volgens de code, als de gebruiker een waarde invoert voor de @@callableName@@-parameter in het Parameterdialoogvenster van de serverbehavior—met andere woorden, als de parameterwaarde @@callableName@@ niet null is, of (@@callableName@@ != '')—dan wordt het voorwaardelijke codeblok vervangen door de volgende statements:

@@callableName@@.execute();

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

Anders wordt het codeblok vervangen door de volgende instructie:

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

Een codeblok plaatsen

Wanneer je codeblokken maakt met de Server Behavior Builder, moet je aangeven waar je deze invoegt in de HTML-code van de pagina.

Als je bijvoorbeeld een codeblok invoegt boven de openings-<html>-tag, moet je vervolgens de positie van het codeblok specificeren ten opzichte van andere tags, scripts en servergedragingen in dat gedeelte van de HTML-code van de pagina.Typische voorbeelden zijn het positioneren van een behavior vóór of na recordset-query's die mogelijk ook bestaan in de paginacode boven de openings-<html>-tag.

Wanneer je een positie-optie selecteert uit het pop-upmenu Code invoegen, wijzigen de beschikbare opties in het pop-upmenu Relatieve positie om relevante opties voor dat deel van de pagina te bieden.Als je bijvoorbeeld Boven de <html> tag selecteert in het menu Code invoegen, komen de positioneeropties die beschikbaar zijn in het menu Relatieve positie overeen met keuzes die relevant zijn voor dat deel van de pagina.

De volgende tabel toont de opties voor het invoegen van codeblokken en de relatieve positioneringsopties die beschikbaar zijn voor elk:

Opties voor Code invoegen

Opties voor Relatieve positie

Boven de <html>-tag

  • Aan het begin van het bestand

  • Net voor de recordsets

  • Net na de recordsets

  • Net boven de <html>-tag

  • Aangepaste positie

Onder de </html>-tag

  • Voor het bestandseinde

  • Voor de afsluiting van de recordset

  • Na de afsluiting van de recordset

  • Na de </html>-tag

  • Aangepaste positie

Relatief ten opzichte van een specifieke tag

Selecteer een tag uit het tagmenu en kies vervolgens uit de opties voor de tagpositie.

Relatief ten opzichte van de selectie

Voor de selectie

Na de selectie

Selectie vervangen

Rondom de selectie plaatsen

Om een aangepaste positie te specificeren, moet je een weging toewijzen aan het codeblok.Gebruik de optie Aangepaste positie wanneer je meer dan één codeblok in een bepaalde volgorde moet invoegen. Bijvoorbeeld, om een geordende reeks van drie codeblokken in te voegen na de codeblokken die recordsets openen, zou je een dikte van 60 invoeren voor het eerste blok, 65 voor het tweede en 70 voor het derde.

Standaard wijst Dreamweaver een weging van 50 toe aan alle codeblokken die een recordset openen en die boven de <html> tag worden ingevoegd.Als het gewicht van twee of meer blokken overeenkomt, stelt Dreamweaver willekeurig de volgorde van de blokken in.

Codeblok positioneren (algemene instructies)

Schrijf met de Server Behavior Builder een codeblok.
Selecteer in het dialoogvenster Server Behavior Builder een positie waar je het codeblok wilt invoegen via het pop-upmenu Code invoegen.
Selecteer in het dialoogvenster Server Behavior Builder een positie ten opzichte van de positie die je hebt geselecteerd in het pop-upmenu Code invoegen.
Als je klaar bent met het authoring van het codeblok, klik op OK.

Het server behavior wordt weergegeven in het paneel Server Behaviors (Venster > Server Behavior); klik op de Plus (+) button om het server behavior te bekijken.

Test het servergedrag en zorg ervoor dat het goed functioneert.

Een codeblok positioneren relatief tot een andere tag op de pagina

Selecteer in het pop-upmenu Code invoegen de optie Relatief tot een specifieke tag.
Voer in het vak Tag de tag in of selecteer er een uit het pop-upmenu.

Als u een tag invoert, hoeft u geen punthaken (<>) te gebruiken.

Specificeer een locatie relatief ten opzichte van de tag door een optie te kiezen in het pop-upmenu Relatieve positie.

Positioneer een codeblok relatief ten opzichte van een tag geselecteerd door de paginaontwerper

Selecteer in het pop-upmenu Code invoegen de optie Relatief ten opzichte van de selectie.
Specificeer een locatie relatief ten opzichte van de selectie door een optie te kiezen in het pop-upmenu Relatieve positie.

Je kunt je codeblok net voor of net na de selectie invoegen. Je kunt ook de selectie vervangen door je codeblok of je kunt het codeblok rond de selectie plaatsen.

Om het codeblok rond een selectie te plaatsen, moet de selectie bestaan uit een openings- en sluitingstag zonder iets ertussen, als volgt:

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

Voeg het openingstaggedeelte van het codeblok in voor de openingstag van de selectie en het sluitingstaggedeelte van het codeblok na de sluitingstag van de selectie.

Codeblokken herhalen met de lusinstructie

Om een gedeelte van een codeblok of het gehele codeblok een aantal keer te herhalen, gebruik je de volgende syntaxis:

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

block<@ endloop @>

Bij het maken van servergedragingen kun je herhalingsconstructies gebruiken om een codeblok een opgegeven aantal keren te herhalen.<@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> codeblok <@ endloop @>De loop-instructie accepteert een door komma's gescheiden lijst van parameterarrays als argumenten. In dit geval maken parameterarray- argumenten het mogelijk dat een gebruiker meerdere waarden voor een enkele parameter opgeeft. De herhalende tekst wordt n keer gedupliceerd, waarbij n de lengte is van de parameterarray-argumenten. Als meer dan één parameterarray-argument wordt opgegeven, moeten alle arrays dezelfde lengte hebben.Bij de ide evaluatie van de loop vervangen de ide elementen van de parameterarrays de bijbehorende parameter- instanties in het codeblok.

Wanneer je een dialoogvenster maakt voor het servergedrag, kun je een besturingselement toevoegen aan het dialoogvenster waarmee de paginaontwerper parameterarrays kan maken. Dreamweaver bevat een eenvoudig arraybesturingselement dat je kunt gebruiken om dialoogvensters te maken. Dit besturingselement, Text Field Comma Separated List genaamd, is beschikbaar via de Server Behavior Builder. Om gebruikersinterface-elementen van grote complexiteit te maken, zie de API-documentatie voor het maken van een dialoogvenster met een besturingselement om arrays te maken (bijvoorbeeld een rasterbesturingselement).

Je kunt willekeurig veel condities of een loop-instructie nesten binnen een conditionele instructie. Je kunt bijvoorbeeld opgeven dat als een expressie waar is, een loop wordt uitgevoerd.

Het volgende voorbeeld toont hoe zulke herhalende codeblokken kunnen worden gebruikt om serverbetegedragingen te maken (het voorbeeld is een ColdFusion- gedrag dat wordt gebruikt om toegang te krijgen tot een opgeslagen procedure):

<@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> codeblok

<@ 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 dit voorbeeld kan de CFSTOREDPROC-tag nul of meer CFPROCPARAM-tags bevatten. Zonder ondersteuning voor de loop-richtlijn is er echter geen manier om de CFPROCPARAM-tags op te nemen binnen de ingevoegde CFSTOREDPROC-tag. Als dit zou worden gemaakt als een servergedrag zonder gebruik van de loop-richtlijn, zou je dit voorbeeld moeten verdelen in twee deelnemers: een hoofd-CFSTOREDPROC-tag en een CFPROCPARAM-tag waarvan het deelnemertype meervoudig is.

Met de loop-richtlijn kun je dezelfde procedure als volgt schrijven:

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

Notitie

Nieuwe regels na '@>' worden genegeerd.

Als de gebruiker de volgende parameterwaarden heeft ingevoerd in het dialoogvenster Server Behavior Builder:

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

Het servergedrag zou de volgende runtimecode invoegen in de pagina:

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

Notitie

Parameter arrays kunnen niet buiten een lus worden gebruikt, behalve als onderdeel van een voorwaardelijke richtlijn-expressie.

De variabelen _length en _index van de lusinstructie gebruiken

De lus-richtlijn bevat twee ingebouwde variabelen die je kunt gebruiken voor ingesloten if-voorwaarden. De variabelen zijn: _lengte en _index. De _length-variabele evalueert naar de lengte van de arrays die door de lus-richtlijn worden verwerkt, terwijl de _index-variabele evalueert naar de huidige Index van de lus-richtlijn. Om ervoor te zorgen dat de variabelen alleen worden herkend als richtlijnen, en niet als werkelijke parameters die in de lus moeten worden doorgegeven, sluit geen van beide variabelen in @@s in.

Een voorbeeld van het gebruik van ingebouwde variabelen is om ze toe te passen op het import-attribuut van de pagina-richtlijn. Het import-kenmerk vereist dat pakketten worden gescheiden door komma's.Als de loop-richtlijn zich uitstrekt rondom het hele import-attribuut, zou je alleen de attribuutnaam import= uitvoeren op de eerste iteratie van de lus—dit omvat de sluitende dubbele aanhalingstekens (")—en geen komma uitvoeren op de laatste iteratie van de lus. Met behulp van de ingebouwde variabele kun je dit als volgt uitdrukken:

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

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

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

<@ endif @>

<@endloop@>

Vraag een parameter aan voor het server gedrag

Servergedragingen vereisen vaak dat de paginaontwerper een parameterwaarde levert. Deze waarde moet worden ingevoegd voordat de code van het servergedrag in de pagina wordt ingevoegd.

Je maakt het dialoogvenster door de designer-geleverde parameters in de code te definiëren.Vervolgens genereer je een dialoogvenster voor het server gedrag, dat de paginaontwerper om een parameterwaarde vraagt.

Notitie

Een parameter wordt zonder jouw tussenkomst aan je codeblok toegevoegd als je opgeeft dat je code moet worden ingevoegd ten opzichte van een specifieke tag gekozen door de paginaontwerper (dat wil zeggen, je koos Relatief ten opzichte van een specifieke tag in het pop-upmenu Code invoegen). De parameter voegt een tagmenu toe aan het dialoogvenster van het gedrag om de paginaontwerper een tag te laten selecteren.

Definieer de parameter in de server gedragscode

Voer een parametermarkering in de code in op de plaats waar je de opgegeven parameterwaarde wilt invoegen. De parameter heeft de volgende syntaxis:

@@parameterName@@

Sluit de formParam-tekenreeks in parametermarkeringen (@@) in:

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

Als het servergedrag bijvoorbeeld het volgende codeblok bevat:

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

Om de paginaontwerper te verplichten de waarde van Form_Object_Name op te geven, sluit je de tekenreeks in parametermarkeringen (@@) in:<% Session("lang_pref") = Request.Form("@@Form_Object_Name@@"); %>

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

U kunt ook de tekenreeks markeren en op de knop Parameter in codeblok invoegen klikken. Typ een naam voor de parameter en klik op OK. In Dreamweaver wordt elke instantie van de gemarkeerde tekenreeks vervangen door de opgegeven parameternaam tussen parametermarkeringen.

Dreamweaver gebruikt de tekenreeksen die u tussen parametermarkeringen hebt ingesloten om de besturingselementen van een tag te voorzien in het dialoogvenster dat wordt gegenereerd (zie de volgende procedure). In het vorige voorbeeld werd in Dreamweaver een dialoogvenster met de volgende label gemaakt:

Notitie

Parameternamen in de code van het servergedrag kunnen geen spaties bevatten. Dat betekent dat dialoogvensterlabels ook geen spaties kunnen bevatten. Als u spaties in de label wilt opnemen, kunt u het gegenereerde HTML-bestand bewerken.

Een parameternaam invoeren

Maak een dialoogvenster voor je servergedrag om de parameterwaarde op te vragen

Klik in de Server Behavior Builder op Volgende.
Om de weergavevolgorde van de dialoogvensterbesturingselementen te wijzigen, selecteer je een parameter en klik je op de pijltjes omhoog en omlaag.
Om het besturingselement van een parameter te wijzigen, selecteer je de parameter en selecteer je een ander besturingselement in de kolom Weergeven als.
Klik op OK.

Dreamweaver genereert een dialoogvenster met een gelabeld besturingselement voor elke door de ontwerper opgegeven parameter die je hebt gedefinieerd.

Het dialoogvenster weergeven

Klik op de knop Plus (+) in het paneel Server Behaviors (Window > Server Behaviors) en selecteer je aangepaste servergedrag in het pop-upmenu.

Bewerk het dialoogvenster dat je hebt gemaakt voor het servergedrag

Klik in het paneel Server Behaviors (Window > Server Behaviors) op de knop Plus (+) en selecteer Edit Server Behaviors in het pop-upmenu.
Selecteer je servergedrag in de lijst en klik op Openen.
Klik op Volgende.

Er verschijnt een dialoogvenster met alle door de ontwerper opgegeven parameters die je in je code hebt gedefinieerd.

Om de weergavevolgorde van de dialoogvensterbesturingselementen te wijzigen, selecteer je een parameter en klik je op de pijltjes omhoog en omlaag.
Om het besturingselement van een parameter te wijzigen, selecteer je de parameter en selecteer je een ander besturingselement in de kolom Weergeven als.
Klik op OK.

Servergedrag bewerken en wijzigen

Je kunt elk servergedrag bewerken dat is gemaakt met de Server Behavior Builder, inclusief servergedragingen die je downloadt van de Dreamweaver Exchange website en van andere externe ontwikkelaars.

Als je een servergedrag toepast op een pagina en vervolgens het gedrag bewerkt in Dreamweaver, verschijnen instanties van het oude gedrag niet meer in het paneel Servergedragingen. Het paneel Servergedragingen doorzoekt de pagina naar code die overeenkomt met de code van bekende servergedragingen. Als de code van een servergedrag wijzigt, herkent het paneel eerdere versies van het gedrag op die pagina niet meer.

Behoud de oude en nieuwe versies van het gedrag in het paneel

Klik op de knop Plus (+) in het paneel Servergedragingen (Venster > Servergedragingen), selecteer Nieuw servergedrag en maak een kopie van het oude servergedrag.

Bewerk de code van een servergedrag dat is gemaakt met de Server Behavior Builder

Klik in het paneel Servergedragingen (Venster > Servergedragingen) op de knop Plus (+) en selecteer Servergedragingen bewerken in het pop-upmenu.

Het dialoogvenster Servergedragingen bewerken toont alle gedragingen voor de huidige servertechnologie.

Selecteer het servergedrag en klik op Bewerken.
Selecteer het juiste codeblok en wijzig de code, de parametermarkeringen of de positie van het codeblok dat op pagina's moet worden ingevoegd.
Als de gewijzigde code geen door de designer opgegeven parameters bevat, klik dan op OK.

Dreamweaver genereert het servergedrag opnieuw zonder dialoogvenster. Het nieuwe servergedrag verschijnt in het pop-upmenu Plus (+) van het paneel Servergedragingen.

Als de gewijzigde code wel door de ontwerper opgegeven parameters bevat, klik je op Volgende.

Dreamweaver vraagt je of je een nieuw dialoogvenster wilt maken en het oude wilt overschrijven. Breng je wijzigingen aan en klik op OK.

Dreamweaver slaat alle wijzigingen op in het EDML-bestand van het servergedrag.

Coderingsrichtlijnen

Over het algemeen moet de code van je servergedrag compact en robuust zijn. Webapplicatieontwikkelaars zijn zeer gevoelig voor code die aan hun pagina's wordt toegevoegd.Volg algemeen geaccepteerde codeerpraktijken voor de taal van het documenttype (ColdFusion, JavaScript, VBScript of PHP). Houd bij het schrijven van opmerkingen rekening met de verschillende technische doelgroepen die de code mogelijk moeten begrijpen, zoals web- en interactieontwerpers of andere web-app-ontwikkelaars. Voeg opmerkingen toe die het doel van de code nauwkeurig beschrijven en eventuele speciale instructies voor het opnemen ervan in een pagina.

Houd de volgende coderichtlijnen in gedachten wanneer je servergedrag maakt:

Foutcontrole

Een belangrijke vereiste. De code van het servergedrag moet foutgevallen netjes afhandelen. Probeer met elke situatie rekening te houden. Wat gebeurt er bijvoorbeeld als een parameteraanvraag mislukt? Wat als er geen records worden opgeleverd door een query?

Unieke namen

Help ervoor te zorgen dat je code duidelijk identificeerbaar is en naamconflicten met bestaande code voorkomt. Als de pagina bijvoorbeeld een functie bevat met de naam hideLayer() en een globale variabele met de naam ERROR_STRING, en je serverbehaviour code invoegt die dezelfde namen gebruikt, kan de serverbehaviour conflicteren met de bestaande code.

Codevoorvoegsels

Hiermee kun je je eigen runtimefuncties en globale variabelen in een pagina identificeren.Eén conventie is bijvoorbeeld het gebruik van uw initialen. Gebruik nooit het voorvoegsel MM_, omdat dit uitsluitend is gereserveerd voor Dreamweaver. Dreamweaver plaatst voor alle functies en globale variabelen het voorvoegsel MM_ om te voorkomen dat ze conflicteren met code die jij schrijft.

var MM_ERROR_STRING = "...";

function MM_hideLayer() {

Vermijd vergelijkbare codeblokken

zodat de code die je schrijft niet al te veel lijkt op de code in andere blokken. Als een codeblok te veel lijkt op een ander codeblok op de pagina, kan het deelvenster Server Behaviors ten onrechte het eerste codeblok identificeren als een instantie van het tweede codeblok (of omgekeerd).Een eenvoudige oplossing is een opmerking toevoegen aan een codeblok om het unieker te maken.

Gedrag van de testserver

De Dreamweaver Exchange beveelt aan om de volgende tests uit te voeren op elke serverbehaviour die je maakt:

  • Pas het gedrag toe vanuit het paneel Servergedrag. Als het een dialoogvenster heeft, voer in elk veld geldige gegevens in en klik op OK.Controleer of er geen fouten optreden wanneer het gedrag wordt toegepast. Controleer dat de runtime-code voor het servergedrag verschijnt in de Code inspector.

  • Pas het servergedrag opnieuw toe en voer ongeldige gegevens in elk veld van het dialoogvenster in.Probeer het veld leeg te laten, grote of negatieve getallen te gebruiken, ongeldige tekens te gebruiken (zoals /, ?, :, *, enzovoort), en letters te gebruiken in numerieke velden. Je kunt formuliervalidatieroutines schrijven om ongeldige gegevens te verwerken (validatieroutines vereisen handmatig programmeren, wat buiten de omvang van dit boek valt).

    Nadat je je servergedrag succesvol hebt toegepast op de pagina, controleer het volgende:

  • Controleer het paneel Servergedragingen om er zeker van te zijn dat de naam van het servergedrag verschijnt in de lijst met gedragingen die zijn toegevoegd aan de pagina.

  • Indien van toepassing, controleer of server-side script-pictogrammen verschijnen op de pagina.De algemene pictogrammen van het script aan serverzijde zijn gouden schilden. Om de pictogrammen te zien, schakel Onzichtbare elementen in (Weergave > Visuele hulpmiddelen > Onzichtbare elementen).

  • In de Codeweergave (Weergave > Code), controleer dat er geen ongeldige code wordt gegenereerd.

    Bovendien, als je servergedrag code invoegt in het document dat een verbinding tot stand brengt met een database, maak een testdatabase om de code te testen die in het document is ingevoegd. Controleer de verbinding door query's te definiëren die verschillende sets van gegevens en verschillende groottes van datasets produceren.

    Upload ten slotte de pagina naar de server en open deze in een browser. Bekijk de HTML broncode van de pagina en controleer dat er geen ongeldige HTML is gegenereerd door de server-side scripts.