PHP/Sessions: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Mintz l (שיחה | תרומות)
מ שוחזר מעריכה של 89.1.84.20 (שיחה) לעריכה האחרונה של 89.1.21.140
שורה 7:
 
 
= איתחול ה- session =
דדדדדדדדד
בשביל לאתחל session יש להשתמש בפונקציה session_start, במקרה וה- session id נשמר בעוגיות, הקריאה לפונקציה חייבת להיות לפני כל פלט ללקוח. בעייה נפוצה היא שהפונקציה באמת נקראת לפני כל פלט, אבל יוצאת הודעת שגיאה בסגנון:
<div style="direction: ltr;">
Warning:
Cannot modify header information -
headers already sent by (output started at /home/******/domains/*****/public_html/conf.php:**)
in /home/*****/domains/*****/public_html/file.php on line **
</div>
הסיבה לכך, היא שהקובץ נשמר בקידוד UTF-8 כולל מה שנקרא חתימת BOM האומרת כי הקובץ נשמר ב- UTF-8, ובגלל באג ב- PHP אותה חתימה מזוהה כפלט, ב- PHP 6 ככל הנראה ייצא פיתרון לאותו באג.
הפיתרון הוא להשתמש בעורך שיודע לשמור utf-8 בלי אותה חתימה (כמו noteped++) ולשמור את הקובץ בלי חתימה.
 
 
= יצירת session =
שורה 18 ⟵ 28:
$_SESSION['hello'] = "world";
</pre></div>
= מחיקת session =
בני זונות מזדיינים בתחת
כמו מחיקת משתנים רגילים, מחקית session מתבצעת באמצעות הפונקציה unset, למשל, אם נרצה למחוק את ה- session בשם hello, נכתוב:
<div style="text-align:left; direction:ltr;"><pre>
unset($_SESSION['hello']);
</pre></div>