logo


פרק 4: HTML בחטף ותבניות (Templates) רשת

בואו נתעלל קצת במסמך: "Build-a-Pizza" פוגשת את "Smallville Gazette"

במקורו, הסקריפט Bulid-a-Pizza של המאמר הקודם לקח קלט מתוך שדות טופס ובנה עמוד רשת. במקום לשלוח את ה HTML ישירות לדפדפן, נוכל להפנות את סקריפט ה Build-a-Pizza שלנו לייצור את ה HTML שלו בתור משתנה סקאלרי, נגיד, pizzaHTML$. הדרך מכאן להכנסת Bulid-a-Pizza לתוך ה Smallville Gazette בעזרת שימוש בטכניקה של חפש-החלף, שכבר למדנו, קצרה.

שילוב של Bulid-a-Pizza לתוך smallville.cgi יוצרת סקריפט ארוך למדי שנוכל להסבירו רק בחלקים, אבל תוכלו לראות את כל הסקריפט כאן.

בשלב ראשון, נדביק את הסקריפט Bulid-a-Pizza בסוף הסקיפט Smallville.cgi שראינו קודם, ונעשה שלשה שינויים בסקריפט ה Pizza כדי שיוכל להתאים לסקיפט Smallville:

1. במקום הדפסת הפלט (print ), כל מחרוזות הפלט יושמו לתוך המשתנה pizzaHTML$ לדוגמה:

the variable $pizzaHTML. For example,

print $theform;

נהפך ל:

$pizzaHTML.=$theform;

בצורה כזו, פלט ה HTML שמיוצר ע"י סקריפט הפיצה נבנה לתוך המשתנה pizzaHTML$ במקום להשלח ישירות לדפדפן.

2. אנו מסירים קריאות ל cgiobject->$header מסקריפט הפיצה בגלל שה header כבר נשלח בראש הסקריפט Smallville.

3. השגרה (routine) העיקרית של סקריפט הפיצה שקוראת לתת השגרות השונות מוכנסת לתת שגרה בעצמה, שתקרא build_a_pizza&. זה בסך הכל מאפשר לנו להריץ את סקריפט הפיצה ע"י קריאה לתת שגרה, שתפעיל את כל הקוד שבונה תוכן לתוך pizzaHTML$.

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

#generate pizza form
&build_a_pizza;

#search-and-replace on pizza form
$resultPage=~s/INSERT PIZZA HERE/$pizzaHTML/g;

ה smallville.cgi המחודש (הן המידע המתעדכן והן Bulid-a-pizza המשולבים בתוך התבנית של Smallville Gazette) מבוסס בסך הכל על הטכניקה הפשוטה יחסית של חפש-החלף.

זרימת מידע; או בואו נתעלל קצת במסמך
תוכן עניינים
סיכום

אודות
תוכן עניינים
פרק 1: ה Perl שאתם צריכים לדעת
פרק 2: קישור Perl לעמודי הרשת
פרק 3: שמירת מצב
פרק 4: HTML בחטף ותבניות (Templates) רשת
קוד כמו שסבתא נהגה להכין  
המתווך שלנו: CGI.pm  
זרימת מידע או בואו נתעלל קצת במסמך  
בואו נתעלל קצת במסמך: בניית הפיצריה פוגשת את Smallville Gazzette  
סיכום  
פרק 5: עיבוד וניתוח של עמודי רשת
פרק 6: להשתעשע עם בסיסי נתונים מקוונים:אקסס
פרק 7: המודל MySQL
פרק 8: להשתעשע בבסיסי נתונים - GUFE - החזית הכללית והשימושית
פרק 9: המילניום - ניהול זמן ותאריך
פרק 10: ניהול רשימות והאשים (Hashs)
פרק 11: הפניה להפניה
פרק 12: הכרות עם mod_perl