بعد از این درس دقیقاً چه بلدی؟
- میتوانی «Session» را با مثال همین درس توضیح بدهی.
- میدانی «Cookie» کجای مسئله به کار میآید.
- تغییر پیشنهادی درس را اجرا میکنی و از روی نتیجه، اشتباه را پیدا میکنی.
شماره کمد امانات
Cookie شبیه برگه شمارهای است که دست مشتری میماند؛ محتویات مهم کمد روی سرور نگهداری میشود. کاربر میتواند برگه خودش را دستکاری کند، پس به داده حساس داخل آن اعتماد نمیکنیم.
هر درخواست وب در اصل جداست. برای اینکه سایت بداند کاربر وارد شده یا سبد خریدش چیست، باید بخشی از وضعیت را میان درخواستها نگه دارد.
چرا مهم است؟ نام نمایشی کاربر را داخل Session میگذاریم و در درخواست بعدی همان را نشان میدهیم.
اولین تمرین تو: نام نمایشی کاربر را داخل Session میگذاریم و در درخواست بعدی همان را نشان میدهیم.
اول بفهم، بعد کد بنویس
Session
داده را معمولاً روی سرور نگه میدارد و مرورگر فقط شناسه نشست را میفرستد.
Cookie
داده کوچکی است که مرورگر نگه میدارد و با درخواستهای بعدی میفرستد.
session_start
باید پیش از خروجی اجرا شود تا نشست فعلی باز یا ساخته شود.
خوشآمدگویی پس از ورود
نام نمایشی کاربر را داخل Session میگذاریم و در درخواست بعدی همان را نشان میدهیم.
قطعهها را به ترتیب درست بچین
روی هر قطعه بزن تا وارد پاسخ شود؛ برای برگرداندن دوباره روی آن بزن. با دکمههای جابهجایی هم میتوانی بدون کشیدن و رهاکردن ترتیب را اصلاح کنی.
کد را کامل کن و ساختار آن را بررسی کن
این درس وارد قابلیتهای سروری یا حرفهای شده است. برای امنیت سایت، کد دلخواه روی سرور اجرا نمیشود؛ بررسیگر، وجود اجزای ضروری و منطق مورد انتظار را کنترل میکند و راهنمای اصلاح میدهد.
کد را کامل کن و «بررسی ساختار» را بزن.
این مثال خطبهخط چه میگوید؟
فعلاً حفظ نکن؛ هر خط را به یک جمله ساده تبدیل کن.
- 1
<?phpاز اینجا مفسر PHP شروع به خواندن کد میکند.
- 2
session_start();این خط بخشی از منطق اصلی مثال است؛ نامها و علامتها را از راست به چپ، بخشبهبخش بخوان.
- 3
$_SESSION["user_name"] = "سارا";این خط بخشی از منطق اصلی مثال است؛ نامها و علامتها را از راست به چپ، بخشبهبخش بخوان.
- 4
echo "خوش آمدی " . $_SESSION["user_name"];نتیجه این عبارت به خروجی پاسخ فرستاده میشود.
راهنماییها مرحلهای هستند؛ اول خودت پیام خطا را بخوان.
کلید user_name را در خط آخر عمداً user بنویس و هشدار را بخوان. سپس با ?? برای حالت نبودن نام یک پیام مهمان بساز.
از ساده به چالشی، بدون پرش
یکی از مقدارهای مثال را عوض کن، خروجی را روی کاغذ حدس بزن و سپس بررسی کن.
کلید user_name را در خط آخر عمداً user بنویس و هشدار را بخوان. سپس با ?? برای حالت نبودن نام یک پیام مهمان بساز.
سناریوی «خوشآمدگویی پس از ورود» را با نامهای واضحتر و یک حالت تازه گسترش بده.
این سه اشتباه را انجام نده
session_start را بعد از echo اجرا میکنی.
رمز عبور یا داده حساس را داخل Cookie میگذاری.
بعد از ورود موفق شناسه Session را تازه نمیکنی.
5 پرسش کوتاه؛ مطمئن شو واقعاً یاد گرفتهای
برای هر پرسش یک پاسخ انتخاب کن. بعد از هر انتخاب، دلیل پاسخ را همانجا میبینی.
برای نگهداری وضعیت ورود، کدام محل مناسبتر است؟
کدام توضیح، «Session» را دقیقتر بیان میکند؟
بهترین قدم بعد از خواندن مثال این درس چیست؟
کدام روش نشان میدهد این درس را واقعاً فهمیدهای؟
کدام رفتار احتمال خطا را در همین موضوع بیشتر میکند؟
درس را فقط وقتی تمام کن که کد را تغییر دادهای
دیدن آموزش کافی نیست؛ یک مقدار را تغییر بده، خروجی را پیشبینی کن و بعد اجرا بزن.