
Session ها در PHP
در این بخش به بررسی Session ها در PHP می پردازیم. از سشن ها در PHP برای ذخیره اطلاعات در متغیر ها برای استفاده در چندین صفحه استفاده می کنیم.
بر خلاف کوکی ها که در رایانه کاربر ذخیره و نگهداری می شد ، Session ها در سرور نگهداری و پردازش می شوند.
سشن ها در PHP چی هستند ؟
هنگامی که شما وارد یک صفحه وب می شوید ، سیستم متوجه می شود که شما چه زمانی وارد شدید ، با نوع سیستم عاملی و تا چه زمانی فعالیت خود را ادامه داده اید.
اما این تنها محدود به همان صفحه می شود و اگر مجدداً وارد صفحه جدیدی بشوید به طور عادی امکان شناسایی کاربر وجود ندارد.
ما معمولاً از Session ها در PHP برای شناسایی کاربر ها استفاده می کنیم و مقادیری مانند ( نام کاربر ، رنگ مورد علاقه آن ، آدرس IP آن و سایر اطلاعات… ) را ذخیره و نگهداری می کنیم.
به طور پیش فرض Session ها تا زمانی که کاربر مرورگر خود را ببندد ادامه پیدا می کند.
بنابراین Session ها اطلاعات کاربر را درون خود نگهداری می کنند و در تمام بخش های وب سایت قابل استفاده هست.
نکته: اگر بخواهید داده ها را برای همیشه نگهداری کنید نیاز دارید تا آنها را داخل یک پایگاه داده ذخیره کنید.
شروع یک Session در PHP
یک session با تابع session_start()
شروع می شود.
متغیر های session در متغیر سراسری $_SESSION
تنظیم می شوند.
مثال
اکنون به عنوان مثال یک فایل با نام demo_session1.php ایجاد می کنیم و session های خودمان را تعریف می کنیم:
نکته: تابع session_start
باید اولین کدی باشد که در سند شما فراخوانی می شود. (قبل از هر تگ HTML)
گرفتن مقادیر متغیر های SESSION ها در PHP
برای گرفتن مقادیر متغیر های session ها باید نام session را در متغیر سراسری $_SESSION
صدا بزنیم.
مثال
اکنون یک صفحه با نام demo_session2.php ایجاد می کنیم. با توجه به اینکه ما به تمامی session های تعریف شده در demo_session1.php دسترسی داریم، می خواهیم در این صفحه آنها را فراخوانی کنیم.
توجه: دقت داشته باشید که متغیر های session به صورت جداگانه به هر صفحه جدید منتقل نمی شود بلکه با استفاده از تابع session_start
که در هر صفحه باز می کنیم بازیابی می شوند.
همچنین توجه داشته باشید که تمام مقادیر متغیر session در متغیر سراسری $_SESSION
ذخیره می شوند:
برای نمایش تمام مقادیر متغیر های session های تعریف شده در متغیر سراسری $_SESSION
به این شکل عمل می کنیم:
سشن ها چطوری کار می کنند ؟ چطوری ما را شناسایی می کنند ؟
اکثر session ها یک user-key بر روی سیستم کاربر تنظیم می کنند چیزی شبیه به این: 765487cf34ert8dede5a562e4f3a7e12.
سپس هنگامی که یک session در صفحه دیگری باز می شود، کامپیوتر را برای یافتن user-key اسکن می کند.
اگر مطابقت وجود داشته باشد به آن session دسترسی پیدا می کند، در غیر این صورت session جدیدی ساخته می شود.
تغییر مقدار یک متغیر session در PHP
برای تغییر مقدار یک session فقط کافیست آن را مجدداً بازنویسی کنید.
مثال
نابود کردن session در PHP
برای حذف تمامی متغیر های سراسری session و به طور کل از بین بردن session از توابع session_unset()
و session_destroy()
استفاده می کنیم.
مثال
آیا این مطلب برای شما مفید بود ؟
روانشناسى قبائل قريش
و (از قريش پرسيدند) درود خدا بر او، فرمود: امّا بنى مخزوم، گل خوشبوى قريشند، و كه شنيدن سخن مردانشان، و ازدواج با زنانشان را دوست داريم، امّا بنى عبد شمس(1) دورانديش تر، و در حمايت مال و فرزندان توانمندترند كه به همين جهت بد انديش تر و بخيل تر مى باشند.
و امّا ما (بنى هاشم) آنچه را در دست داريم بخشنده تر، و براى جانبازى در راه دين سخاوتمندريم. آنها شمارشان بيشتر امّا فريب كارتر و زشت روى ترند، و ما گوياتر و خيرخواه تر و خوش روى تريم.(2)
- بنی عبدشمس، همان امویان هستند، که عبدشمس پسر عموی هاشم بن عبدالمطلّب بود.
- اشاره به علم اتنولوژی Ethnology (قوم شناسی، مردم شناسی) که به شناخت قبایل گوناگون با روانشناسی حاکم بر آنان می پردازد.