כדי להשלים כהלכה פעילויות של בקשה ותגובה, דפי אינטרנט חייבים לאחסן נתונים באופן זמני או קבוע. כמעט לכל שפת פיתוח אתרים יש הפעלות וקובצי Cookie לאחסון פרטי לקוח ושרת, ומספקים חוויה חלקה ומאובטחת. מאמר זה יעבור בפירוט על הפעלות וקובצי Cookie של PHP.
מהן עוגיות והפעלות?
קובצי Cookie הם קבצים קטנים שנשמרים במחשב הלקוח ויכולים לכלול מידע על המשתמש, ה לבקש, התשובה והשרת. הם מועברים לשרת לצד בקשות, מה שמאפשר לשרת לזהות את המשתמש. משתמש יכול גם לבנות משלו עוגיות ולאחסן בהם נתונים לגישה מאוחרת יותר. הפעלה היא אובייקט המאחסן נתונים הקשורים למבקר ספציפי לאורך ביקוריו, כולל פרטי התחברות, פרטי חשבון ורשומות טופס אחרות.
כיצד ליצור קובץ Cookie ב-PHP
PHP setcookie()
השיטה משמשת ליצירת קובץ Cookie חדש. התחביר הכללי ליצירת קובץ Cookie ב-PHP הוא כדלקמן:
setcookie(name, value, expire, path, domain, secure, httponly);
הפרמטר הראשון, name
, הוא היחיד הנדרש. שאר הפרמטרים הם אופציונליים. הנה דוגמה ליצירת קובץ Cookie:
setcookie("my_first_cookie","It contains a string");
כיצד לאחזר עוגיות וערכן?
PHP מאחסנת עוגיות ב-$_COOKIE גלוֹבָּלִי מִשְׁתַנֶה. כדי לקבל קובץ Cookie והערך שלו, פשוט ספק את שם ה-cookie למשתנה הגלובלי. הנה דוגמה לשימוש במשתנה הגלובלי לרכישת קובץ cookie:
$_COOKIE["my_first_cookie"] // will return "It contains a string"
איך מוחקים עוגיות?
ניתן להגדיר את תוקפו של קובץ Cookie כך שתוקףו יפוג לאחר פרק זמן מסוים, ולאחר מכן הוא יושמד מיד. הנה דוגמה ליצירת קובץ Cookie עם תפוגה של יום אחד זמן:
setcookie("my_first_cookie","It contains a string", time() + (86400), "/"); // 86400 = 1 day
מכיוון שתקופת התפוגה של העוגייה חייבת להיות בשניות, השתמשנו ב- זמן() שיטה להחזרת השעה הנוכחית ולהוסיף את כמות השניות ביום (86400).
איך לעדכן עוגיות?
אותו דבר עוגייהניתן להשתמש בפונקציה () כדי לעדכן קובץ Cookie. כל שעליך לעשות הוא להפעיל את פונקציה עם שם העוגייה והגדר את הארגומנטים החדשים. הנה דוגמה לשינוי תקופת התפוגה של קובץ Cookie ליומיים:
setcookie("my_first_cookie","It contains a string", time() + (86400 * 2), "/"); // 86400 = 1 day
ראוי להזכיר שעוגיות הן באופן אוטומטי כתובת URL מוצפן כשהוגשה בבקשה ופוענחת כשהתקבלה. ניתן להשתמש בפונקציה setrawcookie() כדי לבטל זאת.
אתה יכול גם למחוק קובץ Cookie על ידי עדכון זמן התפוגה שלו לתאריך עבר. הנה דוגמה למחיקת קובץ Cookie באופן מיידי:
setcookie("my_first_cookie","", time() - 3600);
האם הדפדפן שלך מאפשר עוגיות?
הנה דרך פשוטה לבדוק אם הדפדפן שלך הפעיל קובצי Cookie:
if(count($_COOKIE) > 0) {
echo "Cookies are enabled.";
} else {
echo "Cookies are disabled.";
}
הבנת הפעלות PHP
פרוטוקול ה-HTTP אינו שומר על סטטוס משתמש בדף אינטרנט. מפגשים משמשים כדי לפתור את האתגר של התמדה וגישה למשתנה על פני מספר דפי אינטרנט. בחלק זה, נבחן כיצד להשתמש בהפעלות PHP כדי לאחסן ולגשת לערכים.
התחלת מושב
ב-PHP, השתמש בהפעלה התחלה() שיטה ליזום הפעלה. שיטה זו מתחילה הפעלה חדשה או חוזרת להפעלה קיימת. חשוב לשים לב שיש לקרוא לפונקציה זו לפני שידור פלט כלשהו לדפדפן; אחרת, תיווצר שגיאה. הנה דוגמה כיצד להתחיל מפגש:
<?php
session_start();
אחסון נתונים
לאחר התחלת הפעלה, תוכל להשתמש במשתנה הגלובלי $_SESSION כדי לשמור נתונים בהפעלה. הנתונים נשמרים כזוגות מפתח-ערך, כאשר המפתח הוא משתנה השם והערך הם הנתונים שיש להקליט. הנה דוגמה לאחסון נתונים בהפעלה:
<?php
session_start();
$_SESSION['username'] = "JohnDoe";
משחזר נתונים
כדי לאחזר נתונים מהפעלה, אתה יכול להשתמש ב- $_SESSION
משתנה גלובלי וגישה למפתח הנתונים שברצונך לאחזר. הנה דוגמה לאחזור נתונים מהפעלה:
<?php
session_start();
echo $_SESSION['username']; // will output "JohnDoe"
מחיקת נתונים
כדי למחוק נתונים מהפעלה, תוכל לבטל את ההגדרה של מפתח הנתונים שברצונך להסיר. הנה דוגמה למחיקת נתונים מהפעלה:
<?php
session_start();
unset($_SESSION['username']);
הורס סשן
כדי להרוס הפעלה, אתה יכול להשתמש ב- session_destroy()
פוּנקצִיָה. פונקציה זו תסיר את כל הנתונים המאוחסנים בהפעלה ותסיים את ההפעלה. הנה דוגמה להרס של הפעלה:
<?php
session_start();
session_destroy();
שאלות ותשובות
מה מטרת העוגיות ב-PHP?
קובצי Cookie הם קבצים קטנים המאוחסנים במחשב הלקוח ויכולים להכיל מידע הקשור למשתמש, לבקשה, לתגובה ולשרת. הם נשלחים יחד עם בקשות לשרת, מה שמאפשר לשרת לזהות את המשתמש.
כיצד נוכל ליצור קובץ Cookie ב-PHP?
PHP setcookie()
השיטה משמשת ליצירת קובץ Cookie חדש. חשוב לציין שהפרמטר הראשון, name
, הוא היחיד הנדרש, בעוד ששאר הפרמטרים הם אופציונליים.
כיצד נוכל לקבל את הערך של קובץ Cookie ב-PHP?
קובצי Cookie מאוחסנים במשתנה הגלובלי $_COOKIE ב-PHP. כדי לקבל קובץ Cookie והערך שלו, אתה יכול פשוט להעביר את שם ה-cookie למשתנה הגלובלי.
כיצד נוכל למחוק קובץ Cookie ב-PHP?
אתה יכול להגדיר זמן תפוגה לעוגייה, ולאחר מכן היא תימחק אוטומטית. אתה יכול גם לעדכן את זמן התפוגה של קובץ Cookie לתאריך עבר על מנת למחוק אותו באופן מיידי.
מה מטרת הפעלות ב-PHP?
הפעלות משמשות כדי להתמיד ולגשת לערך על פני מספר דפי אינטרנט.
תרגילים:
- מה ההבדל בין הפעלה לעוגייה?
- איך מתחילים מפגש?
- איך מגדירים משתנה הפעלה?
- איך הורסים סשן?
- איך מגדירים עוגיה?
- איך משחזרים את הערך של עוגיה?
- איך מבטלים עוגיה?
תשובות:
- הפעלה היא דרך לאחסן נתונים על השרת, בעוד שעוגייה היא דרך לאחסן נתונים במחשב הלקוח. הפעלות משמשות בדרך כלל לאימות והרשאה, בעוד שקובצי Cookie משמשים להעדפות משתמש ומעקב.
- כדי להתחיל הפעלה ב-PHP, השתמש בפונקציה session_start().
- כדי להגדיר משתנה הפעלה ב-PHP, השתמש במערך העל-גלובלי $_SESSION, כך: $_SESSION['variable_name'] = 'value';
- כדי להרוס הפעלה ב-PHP, השתמש בפונקציה session_destroy().
- כדי להגדיר קובץ cookie ב-PHP, השתמש בפונקציה setcookie() כמו: setcookie('cookie_name', 'value', time() + (86400 * 30), '/');
- כדי לאחזר את הערך של קובץ cookie ב-PHP, השתמש במערך העל גלובלי $_COOKIE, כך: echo $_COOKIE['cookie_name'];
- כדי לבטל הגדרה של קובץ cookie ב-PHP, השתמש בפונקציה setcookie() עם תאריך תפוגה בעבר, כך: setcookie('cookie_name', ”, time() – 3600);