logo


פרק 5: עיבוד וניתוח של עמודי רשת

מטרה פשוטה

הבה נזכר - ה Smallville Gazette הוא עיתון צנוע למדי אשר מוצא לאור בעזרת סקריפט CGI, אשר מכניס תוכן משתנה לתוך תבנית מוכנה מראש (בדומה לשפיכת מילוי על עוגה קנויה). בשיעור ההוא עסקנו בהכנסת התאריך הנוכחי לתוך כותרת העיתון.

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

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

<div align="center">
 <p>
  <font face="Verdana, sans-serif">
  <b><!--INSERT DATE HERE--><br>
     Current temperature: 
     <!--INSERT WEATHER HERE--></b></font>
 </p>
</div>

סקריפט ה Perl המקורי פשוט קורא את כל הקובץ smallville.html ומחליף את מציין המקום "INSERT DATE HERE" במידע המעודכן, בעזרת פקודת ההחלפה של Perl:

#determine current date
($sec,$min,$hour,$mday,
 $mon,$year,$wday,$yday,$isdst)=localtime(time);
$curDay=(Sunday,Monday,Tuesday,Wednesday,
         Thursday,Friday,Saturday)[$wday];
$curMonth=(January,February,March,April,
           May,June,July,August,September,
           October,November,December)[$mon];
$liveDate="$curDay, $curMonth $mday, ".($year+1900);

#search-and-replace on date
$resultPage=~s/<!--INSERT DATE HERE-->/$liveDate/g;

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

שאתם צריכים לדעת: פרק 5 עיבוד וניתוח של עמודי רשת Perl ה
תוכן עניינים
LWP:Simple ,פשוט

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