|
עמוד:128
ב . שימוש בעצם מהטיפוס Session לצבירת הניקוד של משתמש בסעיף הזה נשנה את הדף Game 4 . aspx ונשתמש בעצם מהטיפוס Session כדי לצבור את הניקוד של משתמש מסוים . כפי שכבר ראינו , אי-אפשר להשתמש במשתנה רגיל כדי לשמור ערכים בעת המעבר בין דפים ואף בעת טעינה חוזרת של אותו הדף , משום שפרוטוקול HTTP הוא " מצב-חסר , " ולכן ערך המשתנה sum לא נשמר מהגרלה להגרלה . בכל הגרלה הדף נטען מחדש ונוצרים משתנים חדשים . לפיכך , כדי לבצע משימה זו נוסיף לאוסף של העצם Session את הזוג 'sum ' כשם התכונה . בתכונה זו נאחסן את הניקוד המצטבר . בסיום , ערך התכונה של זוג זה יוצג לגולש . נתאר בסעיף זה את השינויים שנבצע בקובץ . Game 4 . aspx כיצד יקבל Session ] "sum" [ את ערכו ? ראשית , יש להגדירו בפעם הראשונה שבה המשתמש גולש לאתר המשחק . לאחר מכן , כל עוד המשתמש אינו עוזב את האתר , הניקוד שהוא מקבל נצבר באמצעות הנתונים שנשמרו בSession- הזה . כדי להוסיף לSession- את זוג הנתונים > ערך , שם-משתמש < בפעם הראשונה שהמשתמש גלש לאתר , נשנה את האירוע Page–Load ונוסיף הוראות שבודקות אם עדיין לא יצרנו זוג מתאים , כלומר נבדוק אם Session בשם sum נוצר או לא . אם לא , ניצור אותו ונאפס אותו . Session ] "sum" [ = 0 ; if ( Session ] "sum" [ == null ) כאמור , כאשר משתמש גולש לאתר , נוצר בעבורו עצם מהטיפוס . Session בונה האתר יכול להוסיף לאוסף הזה זוגות של שמות משתנים והפניות לעצמים כרצונו . עם זאת , עצם שלא הוגדר אינו קיים , ולכן ערכו . null כדי לבדוק אם עצם מטיפוס Session בשם sum עדיין לא נוצר , נבדוק אם ערכו הוא . null אם העצם לא נוצר , ניצור אותו ונציב בתוכו . 0 יצירת העצם מתבצעת על-ידי מתן ערך התחלתי לעצם . המשפט Session ] "sum" [ = 0 יוצר את העצם ומאתחל אותו ל . 0- כאשר לקוח ישלח בקשת HTTP נוספת , ערכו של עצם מהטיפוס Session בשם sum יישמר ולכן הוא יהיה שונה מ . null-
|
|