הערה:

ממשק המשתמש הפך לפשוט יותר ב-Dreamweaver CC ואילך. כתוצאה מכך, ייתכן שלא תמצא חלק מהאפשרויות המתוארות במאמר זה ב-Dreamweaver CC ואילך. לקבלת מידע נוסף, עיין במאמר זה.

אודות התנהגויות שרת מותאמות אישית

Dreamweaver כולל ערכה של התנהגויות שרת מובנות המאפשרות להוסיף יכולות דינמיות לאתרי אינטרנט בקלות. ניתן להרחיב את הפונקציונליות של Dreamweaver על-ידי יצירת התנהגויות שרת בהתאם לצורכי הפיתוח שלך, או על-ידי הורדת התנהגויות שרת מאתר האינטרנט Dreamweaver Exchange.

לפני יצירת התנהגויות שרת משלך, עיין באתר האינטרנט Dreamweaver Exchange ובדוק אם מפתח אחר כבר יצר התנהגות שרת המספקת את הפונקציונליות שברצונך להוסיף לאתר. לעתים קרובות, מפתח מצד שלישי יצר ובדק התנהגות שרת שתתאים לצרכייך.

גישה ל-Dreamweaver Exchange

  1. ב-Dreamweaver, גש ל-Dreamweaver Exchange באחת מהדרכים הבאות:
    • בחר Help >‏ ‏Dreamweaver Exchange.

    • בחר Window >‏ Server Behaviors, לחץ על לחצן הפלוס (+) ובחר בפקודה Get More Server Behaviors.

    אתר האינטרנט של Dreamweaver Exchange נפתח בדפדפן.

  2. היכנס ל-Exchange באמצעות Adobe ID. אם טרם יצרת לעצמך Dreamweaver Exchange ID, פעל לפי ההוראות לפתיחת חשבון של Adobe.

התקנת התנהגות שרת או הרחבה אחרת ב-Dreamweaver

  1. הפעל את Extension Manager באמצעות בחירה באפשרות Commands >‏ Manage Extensions.
  2. בחר בפקודה File >‏ Install Package ב-Extension Manager.

    למידע נוסף, ראה שימוש ב-Extension Manager.

תהליך עבודה של התנהגויות שרת מותאמות אישית

מפתחי אתרי אינטרנט המתמחים ב-ColdFusion, ב-JavaScript, ב-VBScript או ב-PHP יכולים לכתוב התנהגויות שרת מותאמות אישית. הצעדים ליצירת התנהגות שרת כוללים את המשימות הבאות:

  • כתוב גוש קוד אחד או יותר לביצוע הפעולה הדרושה.

  • ציין היכן יש להוסיף את גוש הקוד בקוד HTML של הדף.

  • אם התנהגות השרת דורשת ציון ערך לפרמטר, צור תיבת דו-שיח שתבקש ממפתח אתרי האינטרנט המחיל את ההתנהגות לספק ערך מתאים.

  • בדוק את התנהגות השרת לפני שתהפוך אותה לזמינה לאחרים.

שימוש ב-Server Behavior Builder

השתמש ב-Server Behavior Builder להוספת גוש או גושים של קוד שההתנהגות מוסיפה לדף.

  1. בחלונית Server Behaviors‏(Window >‏ Server Behaviors), לחץ על לחצן הפלוס (+) ובחר New Server Behavior.
  2. בתפריט הנפתח Document Type, בחר בסוג המסמך שהתנהגות השרת שאתה מפתח מיועדת לו.
  3. בתיבה Name, הזן שם להתנהגות השרת.
  4. ‏(אופציונלי) להעתקת התנהגות שרת קיימת והוספתה להתנהגות שאתה יוצר, בחר באפשרות Copy Existing Server Behavior, ולאחר מכן בחר בהתנהגות השרת בתפריט הנפתח Behavior to Copy. לחץ על OK.

    מוצגת תיבת הדו-שיח Server Behavior Builder.

  5. להוספת גוש קוד חדש, לחץ על לחצן הפלוס (+), הזן שם לגוש הקוד ולחץ על OK.

    השם מוצג ב-Server Behavior Builder ותגי הסקריפט המתאימים מוצגים בתיבה Code block.

  6. בתיבה Code Block, הזן את קוד זמן הריצה הדרוש להפעלת התנהגות השרת.

    הערה:

    בעת הזנת קוד בתיבה Code Block, ניתן להוסיף רק תג אחד או גוש קוד אחד לכל אחד משמות הקוד שניתן להם שם (לדוגמה, myBehavior_block1, ‏myBehavior_block2, ‏myBehavior_blockn וכדומה). אם עלייך להזין תגים או גושי קוד מרובים, צור גוש קוד נפרד לכל אחד מהם. ניתן גם להעתיק ולהדביק קוד מדפים אחרים.

  7. מקם את נקודת ההכנסה במקום בגוש הקוד שברצונך להוסיף בו את הפרמטר, או בחר מחרוזת שתוחלף בפרמטר.
  8. לחץ על הלחצן Insert Parameters in Code Block.
  9. הזן שם לפרמטר בתיבה Parameter Name ‏(לדוגמה, Session), ולחץ על OK.

    הפרמטר נוסף לגוש הקוד במקום שהצבת בו את נקודת ההכנסה לפני הגדרת הפרמטר. בעת בחירת מחרוזת, כל אחד מהמופעים של המחרוזת שנבחרה בגוש הקוד מוחלפים בסמן פרמטר (לדוגמה, @@Session@@).

  10. לציון מיקום הטבעת גושי הקוד, בחר אפשרות בתפריט הנפתח Insert Code.
  11. ‏(אופציונלי) לציון מידע נוסף על התנהגות השרת, לחץ על הלחצן Advanced.
  12. ליצירת גושי קוד נוספים, חזור על צעדים 5 עד 11.
  13. אם התנהגות השרת דורשת שיסופקו לה פרמטרים, עלייך ליצור תיבת דו-שיח שתקבל פרמטרים מהאדם שמחיל את ההתנהגות. ראה בקישור שלמטה.
  14. לאחר ביצוע הצעדים הדרושים ליצירת התנהגות השרת, לחץ על OK.

    התנהגות השרת רשומה בחלונית Server Behaviors.

  15. בדוק את התנהגות השרת וודא שהיא פועלת כהלכה.

אפשרויות מתקדמות

לאחר ציון קוד המקור והוספת מיקום לכל אחד מגושי הקוד, הגדרת התנהגות השרת הושלמה. בדרך כלל, אין צורך לציין מידע נוסף.

משתמשים מתקדמים יכולים להגדיר אחת או יותר מהאפשרויות הבאות:

Identifier

מציין אם גוש הקוד יטופל כמזהה.

כברירת מחדל, כל גוש קוד הוא מזהה. אם Dreamweaver מוצא גוש קוד מזהה במקום כלשהו במסמך, ההתנהגות מוצגת בחלונית Server Behaviors. השתמש באפשרות Identifier כדי לציין אם גוש הקוד יטופל כמזהה.

לפחות אחד מגושי הקוד של התנהגות השרת חייב להיות מזהה. גוש קוד אינו יכול לשמש כמזהה במקרה שאחד התנאים הבאים מתמלא: אותו גוש קוד משמש התנהגות שרת אחרת, או שגוש הקוד הוא כה פשוט שהוא יכול להופיע בטבעיות בדף.

Server Behavior Title

מציין את כותרת ההתנהגות בחלונית Server Behaviors.

כשמעצב הדף לוחץ על הלחצן פלוס (+) בחלונית Server Behaviors, כותרת התנהגות השרת החדשה מוצגת בתפריט הנפתח. כשמעצב מחיל מופע של התנהגות שרת על מסמך, ההתנהגות מופיעה ברשימת ההתנהגויות שהוחלו בחלונית Server Behaviors. השתמש בתיבה Server Behavior Title לציון תוכן התפריט הנפתח של הלחצן פלוס (+) ורשימת ההתנהגויות שהוחלו.

הערך ההתחלתי בתיבה הוא השם שהקלדת בתיבת הדו-שיח New Server Behavior. בעת הגדרת פרמטרים, השם מתעדכן אוטומטית, כך שהפרמטר מוצג בסוגריים אחרי שם התנהגות השרת.

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

אם משתמש מקבל את ערך ברירת המחדל, התפריט הנפתח של הלחצן פלוס (+) מציג את כל הטקסט שלפני הסוגריים (לדוגמה, Set Session Variable). השם והפרמטרים יוצגו יחד ברשימת ההתנהגויות שהוחלו - לדוגמה, Set Session Variable ("abcd", "5")‎.

Code Block to Select

מציין את גוש הקוד שנבחר כשהמשתמש בוחר בהתנהגות בחלונית Server Behaviors.

בעת החלת התנהגות שרת, אחד מגושי הקוד הכלולים בהתנהגות מוגדר כ"גוש קוד לבחירה". בעת החלת התנהגות השרת ובחירת ההתנהגות בחלונית Server Behaviors לאחר מכן, גוש הקוד שהוגדר נבחר בחלון Document. כברירת מחדל, Dreamweaver בוחר בגוש הקוד הראשון שאינו נמצא מעל התג html. אם כל גושי הקוד נמצאים מעל לתג html, הגוש הראשון נבחר. משתמשים מתקדמים יכולים לציין את גוש הקוד שנבחר.

יצירת גושי קוד

גושי הקוד שנוצרים ב-Server Behavior Builder הם מכומסים בהתנהגות שרת שמוצגת בחלונית Server Behaviors. הקוד יכול להיות כל קוד זמן ריצה חוקי למודל השרת שצוין. לדוגמה, בעת בחירת ColdFusion כסוג המסמך להתנהגות שרת מותאמת אישית, יש לכתוב קוד ColdFusion חוקי שיפעל בשרת יישומים ColdFusion.

ניתן ליצור גושי קוד ישירות ב-Server Behavior Builder, או להעתיק ולהדביק קוד ממקורות אחרים. כל אחד מגושי הקוד שנוצרים ב-Server Behavior Builder חייב להיות תג יחיד או גוש סקריפט. אם יש צורך להוסיף גושי תגים מרובים, פצל אותם לגושי קוד נפרדים.

תנאים בגושי קוד

Dreamweaver מאפשר לפתח גושי קוד המשלבים הצהרות בקרה שמופעלות לפי תנאים. Server Behavior Builder משתמש בהצהרות if, ‏elseif ו-else, ויכול לכלול גם פרמטרים של התנהגויות שרת. הדבר מאפשר להוסיף גושי טקסט חלופיים בהתאם לערכים של יחסי OR בין פרמטרים של התנהגויות שרת.

הדוגמה הבאה מציגה את ההצהרות if, ‏elseif ו-else. הסוגריים המרובעים ([ ]) מציינים קוד אופציונלי, והכוכבית (*) מציינת אפס מופעים או יותר. כדי להפעיל קטע מגוש קוד או את כל גוש הקוד רק אם תנאי מסוים או תנאים מסוימים מתמלאים, השתמש בתחביר הבא:

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

ביטוי תנאי יכול להיות כל ביטוי JavaScript שניתן להעריך באמצעות הפונקציה eval() של JavaScript, ויכול לכלול פרמטר של התנהגות שרת המסומן ב-@@ (הסימון @@ מבדיל בין פרמטר למשתנים ומילות מפתח של JavaScript).

שימוש יעיל בביטויי תנאי

בעת שימוש בפקודות if, ‏else ו-elseif בתג insertText של XML, הטקסט המשתתף מעובד מראש כדי לעבד את פקודות if ולקבוע איזה טקסט ייכלל בתוצאה. פקודות if ו-elseif מקבלות את הביטוי כארגומנט. ביטוי התנאי זהה לביטויי תנאי של JavaScript, ויכול גם לכלול פרמטרים של התנהגויות שרת. פקודות כגון אלה מאפשרות לבחור מבין גושי קוד חלופיים בהתאם לערכי פרמטרים של התנהגויות שרת או ליחסים בין הפרמטרים.

לדוגמה, קוד JSP הבא מגיע מהתנהגות שרת של Dreamweaver המשתמשת בגוש קוד של תנאי:

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

גוש הקוד של התנאי מתחיל ב-‎<@ if (@@callableName@@ !‎= '') @> ומסתיים ב-<@ endif @>. בהתאם לקוד, אם המשתמש מזין ערך לפרמטר @@callableName@@ בתיבת הדו-שיח Parameter של התנהגות השרת - במילים אחרות, אם ערך הפרמטר @@callableName@@ שונה מאפס, או ‎(@@callableName@@ !‎= '') - ההצהרות הבאות יחליפו את גוש הקוד של התנאי:

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

אחרת, ההצהרה הבאה תחליף את גוש הקוד:

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

מיקום גוש קוד

בעת יצירת גושי קוד באמצעות Server Behavior Builder, יש לציין היכן להוסיפם בקוד HTML של הדף.

לדוגמה, אם מוסיפים גוש קוד מעל התג הפותח <html>, יש לציין את מיקום גוש הקוד יחסית לתגים, לסקריפטים ולהתנהגויות שרת אחרות הכלולים באזור זה של קוד HTML של הדף. דוגמאות טיפוסיות כוללות מיקום התנהגות לפני או אחרי שאילתות ערכת נתונים שעשויות להתקיים גם בקוד הדף מעל לתג הפותח <html>.

בעת בחירת אפשרות מיקום בתפריט הנפתח Insert Code, האפשרויות הזמינות בתפריט הנפתח Relative Position משתנות כדי לספק אפשרויות מתאימות לחלק זה של הדף. לדוגמה, בעת בחירה באפשרות Above The <html> Tag בתפריט הנפתח Insert Code, אפשרויות המיקום הזמינות בתפריט הנפתח Relative Position משקפות בחירות מתאימות לחלק זה של הדף.

הטבלה הבאה מציגה את אפשרויות הוספת גוש הקוד ואת אפשרויות המיקום היחסי הזמינות לכל אחת מהן:

אפשרויות Insert Code

אפשרויות מיקום יחסי

Above the <html> Tag

  • בתחילת הקובץ

  • בדיוק לפני ערכות הרשומות

  • בדיוק אחרי ערכות הרשומות

  • בדיוק מעל לתג <html>

  • מיקום מותאם אישית

Below the </html> Tag

  • לפני סוף הקובץ

  • לפני סגירת ערכת הרשומות

  • אחרי סגירת ערכת הרשומות

  • אחרי התג‎ </html> ‎

  • מיקום מותאם אישית

Relative to a Specific Tag

בחר תג בתפריט הנפתח Tag ולאחר מכן בחר מבין אפשרויות מיקום התג.

Relative to the Selection

לפני הבחירה

אחרי הבחירה

החלף את הבחירה

לפני ואחרי הבחירה

לציון מיקום מותאם אישית, יש להקצות משקל לגוש הקוד. השתמש באפשרות Custom Position כשעלייך להוסיף גושי קוד אחדים בסדר מסוים. לדוגמה, להוספת סדרה מסודרת של שלושה גושי קוד אחרי גושי הקוד המשמשים לפתיחת ערכות רשומות, ניתן להזין משקל של 60 לגוש הראשון, 65 לשני ו-70 לשלישי.

כברירת מחדל, Dreamweaver מקצה משקל של 50 לכל גושי הקוד המשמשים לפתיחת ערכות רשומות שנוספו מעל התג <html>‎. אם המשקל של שני גושים או יותר זהה, Dreamweaver מגדיר את סדר הגושים באקראי.

מיקום גוש קוד (הנחיות כלליות)

  1. כתוב גוש קוד בעזרת Server Behavior Builder.
  2. בתיבת הדו-שיח Server Behavior Builder, בחר מיקום להוספת גוש הקוד בתפריט הנפתח Insert Code.
  3. בתיבת הדו-שיח Server Behavior Builder, בחר מיקום יחסי לזה שבחרת בתפריט הנפתח Insert Code.
  4. אם סיימת לכתוב את גוש הקוד, לחץ על OK.

    התנהגות השרת מוצגת בחלונית Server Behaviors ‏(Window >‏ Server Behavior). לחץ על לחצן הפלוס (+) להצגת התנהגות השרת.

  5. בדוק את התנהגות השרת וודא שהיא פועלת כהלכה.

מיקום גוש קוד יחסית לתג אחר בעמוד

  1. בתפריט הנפתח Insert Code, בחר באפשרות Relative To A Specific Tag.
  2. בתיבה Tag, הזן את התג או בחר תג בתפריט הנפתח.

    בעת הזנת תג, אין לכלול את הסוגריים הזוויתיים (<>).

  3. ציין מיקום יחסי לתג באמצעות בחירת אפשרות בתפריט הנפתח Relative Position.

מיקום גוש קוד יחסית לתג שנבחר על-ידי מעצב העמוד

  1. בתפריט הנפתח Insert Code, בחר באפשרות Relative To The Selection.
  2. ציין מיקום יחסי לבחירה באמצעות בחירת אפשרות בתפריט הנפתח Relative Position.

    ניתן להוסיף את גוש הקוד בדיוק לפני או בדיוק אחרי הבחירה. ניתן גם להחליף את הבחירה בגוש הקוד, או להוסיף את גוש הקוד לפני ואחרי הבחירה.

    להוספת גוש קוד לפני ואחרי הבחירה, הבחירה חייבת לכלול תג פותח ותג סוגר שאין ביניהם דבר, באופן הבא:

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

    הוסף את קטע התג הפותח של גוש הקוד לפני התג הפותח של הבחירה ואת קטע התג הסוגר של גוש הקוד אחרי התג הסוגר של הבחירה.

חזרה על גושי קוד באמצעות פקודת לולאה

לחזרה על קטע מגוש קוד או על גוש קוד שלם פעמים אחדות, השתמש בתחביר הבא:

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

בעת יצירת התנהגויות שרת, ניתן להשתמש ברכיבי לולאה לחזרה על גוש קוד מספר מסוים של פעמים. ‎<@ loop (@@param1@@,@@param2@@,@@param3@@,@@param_n@@) @> code block <@ endloop @>‎פקודת הלולאה מקבלת רשימה מופרדת באמצעות פסיקים של מערכי פרמטרים בתור ארגומנטים. במקרה כזה, ארגומנטים של מערך פרמטרים מאפשרים למשתמש לספק ערכים מרובים לפרמטר יחיד. הטקסט החוזר משוכפל n פעמים, כאשר n הוא אורך הארגומנטים של מערך הפרמטרים. אם צוין יותר מארגומנט אחד של מערך פרמטרים, כל המערכים חייבים להיות באורך זהה. בהערכת i של הלולאה, רכיבי i של מערכי הפרמטרים מחליפים את מופעי הפרמטר הקשורים בגוש הקוד.

בעת יצירת תיבת דו-שיח להתנהגות השרת, ניתן להוסיף לתיבת הדו-שיח בקר המאפשר למעצב הדף ליצור מערכי פרמטרים. Dreamweaver כולל בקר מערך פשוט שניתן להשתמש בו ליצירת תיבות דו-שיח. בקר זה נקרא Text Field Comma Separated List, והוא זמין ב-Server Behavior Builder. ליצירת רכיבי ממשק מורכבים יותר, ראה התיעוד של API על יצירת תיבת דו-שיח עם בקר ליצירת מערכים (לדוגמה, בקר רשת).

ניתן לקנן בפקודת תנאי מספר בלתי מוגבל של פקודות תנאי או לולאה. לדוגמה, ניתן לציין שביטוי יהיה שווה ל-true כדי להפעיל לולאה.

הדוגמה הבאה מציגה כיצד ניתן להשתמש בגושי קוד חוזרים כאלה ליצירת התנהגויות שרת (בדוגמה זו, התנהגות ColdFusion המשמשת לגישה להליך שנשמר):

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

בדוגמה זו, התג CFSTOREDPROC יכול לכלול אפס או יותר תגי CFPROCPARAM. עם זאת, ללא תמיכה בפקודת הלולאה, לא ניתן לכלול את התגים CFPROCPARAM בתג CFSTOREDPROC שנוסף. אילו יצרת אותו כהתנהגות שרת ללא שימוש בפקודת הלולאה, היה עלייך לפצל דוגמה זו לשני משתתפים: תג CFSTOREDPROC ראשי, ותג CFPROCPARAM שסוג המשתתף שלו הוא מרובה.

בעזרת פקודת הלולאה ניתן לכתוב הליך זהה באופן הבא:

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

הערה:

שורות חדשות אחרי כל "<@" יושמטו.

אם המשתמש הזין את ערכי הפרמטר הבאים בתיבת הדו-שיח 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"]

התנהגות השרת תוסיף את קוד זמן הריצה הבא לדף:

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

הערה:

לא ניתן להשתמש במערכי פרמטרים מחוץ ללולאה, אלא אם כן הם חלק מביטוי של פקודת תנאי.

שימוש במשתנים ‎ _length ו-‎_index של פקודת הלולאה

פקודת הלולאה כוללת שני משתנים מובנים שניתן להשתמש בהם לתנאי if מוטבעים. המשתנים הם: ‎_length ו-‎_index. המשתנה ‎_length מוערך ביחס לאורך המערכים המעובדים בפקודת הלולאה, והמשתנה ‎_index מוערך ביחס לאינדקס הנוכחי של פקודת הלולאה. כדי לוודא שהמשתנים יזוהו כפקודות בלבד, ולא כפרמטרים ממשיים להעברה ללולאה, אל תסגור אף אחד מהמשתנים ב-@@.

דוגמה לשימוש במשתנים מובנים היא החלתם על התכונה import של פקודת הדף. התכונה import דורשת הפרדת חבילות באמצעות פסיקים. אם הפקודה loop נמשכת סביב התכונה import כולה, יש לספק פלט של שם התכונה בלבד ‎import= בכל עותק חוזר של הלולאה - כולל מרכאות הסגירה (") - ולא לספק פלט של פסיק בעותק החוזר האחרון של הלולאה. בעזרת המשתנה המובנה ניתן לבטא זאת באופן הבא:

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

בקשת פרמטר להתנהגות שרת

לעתים קרובות, התנהגויות שרת דורשות ממעצב הדף לספק ערך פרמטר. יש להוסיף ערך זה לפני הוספת קוד התנהגות השרת לדף.

ליצירת תיבת הדו-שיח, יש להגדיר את הפרמטרים שמסופקים על -ידי המעצב בקוד. לאחר מכן יש ליצור להתנהגות השרת תיבת דו-שיח, המבקשת ממעצב הדף להזין ערך של פרמטר.

הערה:

פרמטר נוסף לגוש הקוד ללא התערבותך אם ציינת שיש להוסיף את הקוד באופן יחסי לתג מסוים שנבחר על-ידי מעצב הדף (כלומר, אם בחרת באפשרות Relative to a Specific Tag בתפריט הנפתח Insert Code). הפרמטר מוסיף לתיבת הדו-שיח של ההתנהגות תפריט תגים המאפשר למעצב הדף לבחור תג.

הגדרת פרמטר בקוד ההתנהגות של השרת

  1. הזן סמן פרמטר בקוד, במקום שברצונך להוסיף בו את ערך הפרמטר המסופק. תחביר הפרמטר הוא:
    @@parameterName@@
  2. הקף את המחרוזת ‎formParam בסמני פרמטר (@@):
    <% Session(“lang_pref”) = Request.Form(“@@formParam@@”); %>

    לדוגמה, אם התנהגות השרת כוללת את גוש הקוד הבא:

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

    כדי לדרוש ממעצב הדף לספק ערך ל-Form_Object_Name, הקף את המחרוזת בסמני פרמטר (@@):<% Session(“lang_pref”) = Request.Form(“@@Form_Object_Name@@”); %>‎

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

ניתן גם לסמן את המחרוזת וללחוץ על הלחצן Insert Parameter In Code Block. הזן שם לפרמטר ולחץ על OK. Dreamweaver מחליף כל אחד ממופעי המחרוזת המסומנת בשם הפרמטר שצוין המוקף בסמני פרמטר.

Dreamweaver משתמש במחרוזות שהקפת בסמני פרמטר לתוויות הבקרים בתיבת הדו-שיח שנוצרת (ראה את ההליך הבא). בדוגמה הקודמת, Dreamweaver יצר תיבת דו-שיח עם התווית הבאה:

הערה:

שמות פרמטרים בקוד התנהגות השרת אינם יכולים לכלול רווחים. לכן, תוויות של תיבות דו-שיח אינן יכולות לכלול רווחים. אם ברצונך לכלול רווחים בתווית, תוכל לערוך את קובץ HTML שנוצר.

הזנת שם פרמטר
הזנת שם פרמטר

יצירת תיבת דו-שיח להתנהגות שרת המבקשת ערך לפרמטר

  1. ב-Server Behavior Builder, לחץ על Next.
  2. לשינוי סדר התצוגה של בקרי תיבת הדו-שיח, בחר פרמטר ולחץ על החץ למעלה או למטה.
  3. לשינוי בקר של פרמטר, בחר בפרמטר ובחר בקר אחר בעמודה Display As.
  4. לחץ על OK.

    Dreamweaver יוצר תיבת דו-שיח הכוללת בקר תווית לכל אחד מהפרמטרים המסופקים על-ידי המעצב שהגדרת.

הצג את תיבת הדו-שיח.

  1. לחץ על לחצן הפלוס (+) בחלונית Server Behaviors ‏(Window >‏ Server Behaviors), ובחר בהתנהגות השרת המותאמת אישית בתפריט הנפתח.

עריכת תיבת דו-שיח שיצרת להתנהגות שרת

  1. בחלונית Server Behaviors ‏(Window >‏ Server Behaviors), לחץ על לחצן הפלוס (+) ובחר בפקודה Edit Server Behaviors בתפריט הנפתח.
  2. בחר בהתנהגות השרת ברשימה ולחץ על Open.
  3. לחץ על Next.

    מופיעה תיבת דו-שיח המציגה רשימה של כל הפרמטרים המסופקים על-ידי המעצב שהגדרת בקוד.

  4. לשינוי סדר התצוגה של בקרי תיבת הדו-שיח, בחר פרמטר ולחץ על החץ למעלה או למטה.
  5. לשינוי בקר של פרמטר, בחר בפרמטר ובחר בקר אחר בעמודה Display As.
  6. לחץ על OK.

עריכה ושינוי של התנהגויות שרת

ניתן לערוך כל התנהגות שרת שנוצרה באמצעות Server Behavior Builder,כולל התנהגויות שרת שהורדת מאתר האינטרנט Dreamweaver Exchange והתנהגויות שרת של מפתחי צד שלישי.

בעת החלת התנהגות שרת על דף ועריכת ההתנהגות ב-Dreamweaver לאחר מכן, מופעים של ההתנהגות הישנה אינם מוצגים בחלונית Server Behaviors. החלונית Server Behaviors מחפשת בדף קוד מתאים לקוד של התנהגויות השרת הידועות. אם קוד של התנהגות שרת משתנה, החלונית אינה מזהה גרסאות קודמות של ההתנהגות בדף זה.

שמירה על גרסאות ישנות וחדשות של התנהגות בחלונית

  1. לחץ על הלחצן פלוס (+) בחלונית Server Behaviors ‏(Window >‏ Server Behaviors), בחר באפשרות New Server Behavior וצור עותק של התנהגות השרת הישנה.

עריכת קוד של התנהגות שרת שנוצרה ב-Server Behavior Builder

  1. בחלונית Server Behaviors ‏(Window >‏ Server Behaviors), לחץ על הלחצן פלוס (+) ובחר בפקודה Edit Server Behaviors בתפריט הנפתח.

    תיבת הדו-שיח Edit Server Behaviors מציגה את כל ההתנהגויות הזמינות לטכנולוגיית השרת הנוכחית.

  2. בחר בהתנהגות השרת ולחץ על Edit.
  3. בחר בגוש הקוד המתאים ושנה את הקוד, את סמני הפרמטרים או את מיקום הוספת גוש הקוד לדפים.
  4. אם הקוד ששינית אינו כולל פרמטרים המסופקים על-ידי המעצב, לחץ על OK.

    Dreamweaver יוצר את התנהגות השרת מחדש ללא תיבת דו-שיח. התנהגות השרת החדשה מופיעה בתפריט הנפתח של הלחצן פלוס (+) בחלונית Server Behaviors.

  5. אם הקוד ששינית כולל פרמטרים המסופקים על-ידי המעצב, לחץ על Next.

    Dreamweaver מבקש ממך לבחור אם ברצונך ליצור תיבת דו-שיח חדשה שתדרוס את הישנה. בצע את השינויים הרצויים ולחץ על OK.

    Dreamweaver שומר את כל השינויים בקובץ EDML של התנהגות השרת.

הנחיות לכתיבת קוד

באופן כללי, השתדל שקוד התנהגות השרת יהיה מצומצם ויעיל. מפתחי יישומים לאינטרנט רגישים מאד להוספת קוד לדפים שיצרו. השתמש במוסכמות כתיבת הקוד המקובלות לשפת סוג המסמך (ColdFusion, ‏JavaScript, ‏VBScript, או PHP). בעת כתיבת הערות, התחשב בבקיאות הטכנית של משתמשים שיצטרכו להבין את הקוד, לדוגמה מעצבי אתרי אינטרנט או מפתחי יישומי אינטרנט אחרים. כלול הערות שיתארו את מטרת הקוד במדויק, והנחיות מיוחדות להוספתו לדף.

בעת יצירת התנהגויות שרת, פעל לפי הנחיות כתיבת הקוד הבאות:

בדיקת שגיאות

דרישה חשובה. על קוד התנהגות השרת לטפל בשגיאות בצורה נאותה. נסה לצפות מראש את כל הבעיות האפשריות. לדוגמה, מה יקרה אם בקשה לפרמטר נכשלת? מה יקרה אם שום רשומה לא תוחזר משאילתה?

שמות ייחודיים

ודא שהקוד קל ופשוט לזיהוי, והימנע משימוש בשמות המתנגשים עם קוד קיים. לדוגמה, אם הדף כולל פונקציה שנקראת hideLayer()‎ ומשתנה גלובלי שנקרא ERROR_STRING, והתנהגות השרת שלך מוסיפה קוד שמשתמש גם הוא בשמות אלה, התנהגות השרת עלולה להתנגש עם הקוד הקיים.

קידומות קוד

מאפשרות לזהות פונקציות ומשתנים גלובליים שכתבת בעצמך בדף. מוסכמה אחת היא שימוש בראשי התיבות של שמך. לעולם אל תשתמש בקידומת ‎MM_‎, מכיוון שהיא שמורה לשימוש Dreamweaver בלבד. Dreamweaver מוסיף לכל הפונקציות והמשתנים הגלובליים את הקידומת ‎‎‎MM_‎ כדי למנוע התנגשות ביניהם לבין קוד שנכתב על-ידי המשתמש.

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

הימנע מגושי קוד דומים

כך שהקוד שתכתוב לא יהיה דומה מדי לגושי קוד אחרים. אם גוש קוד דומה מדי לגוש קוד אחר בדף, החלונית Server Behaviors עלולה לזהות את גוש הקוד הראשון כמופע של גוש הקוד השני (או להפך). פתרון פשוט הוא הוספת הערה לגוש קוד כדי להפוך אותו לייחודי.

בדיקת התנהגויות שרת

Dreamweaver Exchange ממליץ לבצע את המשימות הבאות בכל התנהגות שרת שאתה יוצר:

  • החל את ההתנהגות מהחלונית Server Behaviors. אם היא כוללת תיבת דו-שיח, הזן נתונים חוקיים בכל אחד מהשדות ולחץ על OK. ודא שלא אירעו שגיאות בעת החלת ההתנהגות. ודא שקוד זמן הריצה להתנהגות השרת מוצג במפקח הקוד.

  • החל את התנהגות השרת שנית והזן נתונים לא חוקיים בכל אחד מהשדות בתיבת הדו-שיח. נסה להשאיר את השדה ריק, להשתמש בערכים גדולים או שליליים, להשתמש בתווים לא חוקיים (כגון /, ?, :, * וכדומה) ולהשתמש באותיות בשדות מספריים. ניתן לכתוב הליכי אימות טופס לטיפול בנתונים לא חוקיים (הליכי אימות כרוכים בכתיבת קוד ידנית, שאינה מתוארת בספר זה).

    לאחר החלת התנהגות השרת על הדף בהצלחה, ודא את הנקודות הבאות:

  • בדוק את החלונית Server Behaviors, וודא ששם התנהגות השרת מופיע ברשימת ההתנהגויות שנוספו לדף.

  • במקרה הצורך, ודא שסמלי סקריפט מצד השרת מוצגים בדף. סמלי הסקריפט מצד השרת הגנריים הם מגינים מוזהבים. להצגת הסמלים, הפעל את האפשרות Invisible Elements ‏(View >‏ Visual Aids >‏ Invisible Elements).

  • בתצוגת Code ‏(View >‏ Code), ודא שלא נוצר קוד לא חוקי.

    בנוסף, אם התנהגות השרת מוסיפה למסמך קוד היוצר חיבור למסד נתונים, צור מסד נתונים לבדיקה כדי לבדוק את הקוד שנוסף למסמך. אמת את החיבור באמצעות הגדרת שאילתות שיפיקו ערכות נתונים שונות, בגדלים שונים.

    לבסוף, העלה את הדף לשרת ופתח אותו בדפדפן. הצג את קוד המקור HTML של הדף, וודא שלא נוצר HTML לא חוקי על-ידי סקריפטים מצד השרת.

עבודה זו בוצעה ברישיון של Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  הודעות המתפרסמות ב- Twitter™‎ ו- Facebook אינן מכוסות בתנאי Creative Commons.

הצהרות משפטיות   |   מדיניות פרטיות מקוונת