16-09-2011, 09:44
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,775
|
|
require מחליף את השורה שבה כתוב ה require, בתוכן הקובץ ש require הצביע עליו. לכל דבר ועניין, זה כאילו היה מדובר בקובץ אחד ארוך.
בוא אני אסביר לך איך עוגיות עובדות, ותענה בעצמך על השאלה שלך.
עוגיה היא בעצם כותר HTTP שנשלח על ידי השרת ללקוח, כתשובה לבקשת דף מהשרת על ידי הלקוח, יחד עם מידע אחר (זמן הבקשה, קידוד, הנחיות Caching, ועוד). לא שום דבר מעבר לכך. הכותר הזה נוסף לתשובת ה HTTP כאשר אתה משתמש בפונקציה setcookie (וכרגיל, רק אם לא נשלח שום פלט לדפדפן עדיין, אחרת תקבל אזהרת Headers already been sent...). אחרי שלקוח מקבל עוגיה, כתוצאה מקבלת תשובה משרת ה-HTTP, הוא מתייחס אליה כפי שהוא רואה לנכון (שומר אותה לזמן מסויים או עד סגירת דפדפן, או מתעלם ממנה לחלוטין, אם כך מוגדר לו). אם הדפדפן שמר את העוגיה, אזי בבקשות הבאות אל שרת ה HTTP, ביחד עם כותרי בקשת ה HTTP, ישלח הדפדפן גם את כל העוגיות הרלוונטיות לפי ה URL המבוקש (הגבלה לפי דומיין ולפי נתיב בתוך האתר, הכל כפי הכתוב בעוגיה). בתורו, השרת (או בעצם - PHP), יקבל את העוגיות שנשלחו על ידי הלקוח, והן יהיו זמינות ב $_COOKIE בצמדי key-value.
אז השאלה שלי עומדת בעינה - האם אתה מנסה להתייחס לעוגיה בתוך אותה הבקשה שבה יצרת אותה (ולא מעניין אם היו לך אינקלודים בקוד או לא, זה חסר משמעות) - או שאתה שולח את העוגיה, הגולש טוען דף חדש (אפילו אותו דף, העיקר שזו בקשה חדשה), ורק אז אתה מנסה להתייחס אליה?
|