به کمک نیاز دارید؟

خدمات تخصصی

جستجو
این کادر جستجو را ببندید.
آموزش زبان PHP

آموزش زبان PHP | مفهوم و کاربرد Session

مفهوم و کاربرد Session در PHP

مفهوم session :

هنگامی که شما با یک نرم افزار در محیط ویندوز کار می کنید ، آن را باز کرده و تغییراتی درونش ایجاد نموده و سپس آن را می بندید . به این فرایند یک session یا به بیان فارسی ، جلسه می گویند . از ابتدای فرایند تا لحظه ای که آن را به اتمام می رسانید ، ویندوز شما را شناخته و می داند که چه کسی هستید .

اما در دنیای وب و اینترنت اوضاع فرق دارد . وب سرور سایتی که در حال بازدید از آن هستید ، نمی داند که شما کی هستید . زیرا آدرس HTTP مرورگر به سرور راجع شما اطلاعاتی نمی دهد . بنابراین تمایز کاربران با یکدیگر غیر ممکن شده و سرور با این وضع برای سرویس دهی به آنها دچار مشکل می شود . بنابراین باید چه کرد ؟ راه حل کجاست ؟

این مشکل در وب و در زبان PHP به وسیله session حل شده است . سرور سایتی که وارد آن می شوید ، اطلاعات شما مثل username , pass را در متغیرهایی به نام session ذخیره می کند . هر بار که صفحه جدیدی از همان سایت را باز می کنید ، سرور اطلاعات session شما را به همراه درخواست صفحه به مرورگر ارسال کرده و بنابراین دیگر نیازی ندارید در هر صفحه اطلاعات کاربری خود را مجددا وارد نمایید . این فرایند را تاکنون بارها تجربه کرده و باعث راحتی شما بوده است . اما session چگونه ایجاد و استفاده می شوند .

اعضای شبکه مشاوران در حوزه «برنامه‌نویسی، وب و امنیت سایبری»

بنفشه سیدکباری

مشاور تحقیقات بازار، بازاریابی و فروش

اگر علاقمندید در تراز شرکتهای بزرگ و صاحب‌نام، بخش بازاریابی...

ویدا رضایی

مشاور برنامه نویسی و طراحی وردپرس

اگر برای طراحی سایت وردپرسی خود به تجربیات و دانش...

احسان مهدوی

مشاور شبکه، نرم افزار و هوش مصنوعی

اگر به دنبال رفع چالشهای شبکه، نرم‌افزار و امنیت فضای...

فاطمه مدیحی

مشاور برنامه نویسی جاوا اسکریپت، CSS و HTML

اگر به کمک شخصی با تجربه در برنامه نویسی Front-End...

سپیده گونجی

مشاور SEO ،UI/UX و بازاریابی دیجیتال

اگر قصد دارید در دنیای دیجیتال فعالیت کرده و در...

نگار جنابی

مدیر پروژه، مشاور و مالک محصول پروژه‌های ICT

اگر در توسعه UI/UX و مدیریت پروژه‌های ICT خود به...

فاطمه پورمحمد

مشاور برنامه نویسی، پایگاههای داده‌ای و دیتاساینس

اگر به یک تحلیل‌گر حرفه‌ای داده، برنامه‌نویس مسلط به پایگاههای...

نیکا تهرانی

متخصص و مشاور سئو تکنیکال

اگر به استراتژی‌های حرفه‌ای سئو در موتور جستجوی گوگل از...

طاهره حسن زاده

تحلیل‌گر داده و مشاور یادگیری‌ماشین و دیپ لرنینگ

اگر به مهارت های یک تحلیلگر داده با تجربه در...

غزل شفیعی

مشاور برنامه نویسی PHP و توسعه لاراول

اگر به متخصصی باتجربه PHP و فریم ورک لاراول برای...

فرید تشیعی

متخصص، استراتژیست و مشاور سئو (SEO)

اگر در پیاده سازی، تعیین استراتژی، بوت کمپ یا مدیریت...

فاطمه جعفری

مشاور توسعه جاوا و اپلیکیشن

اگر به یک رهبر توانمند برای تیم توسعه نرم افزار...

نحوه تعریف session بر روی سرور :

سرور سایت ، در لحظه ورود کاربر به سایت و وارد نمودن اطلاعات کاربری ، یک seesion با یک شناسه خاص ( unique ID – UID ) برای وی ساخته و اطلاعات وی را در آن session ذخیره می کند . این اطلاعات تا زمانی که کاربر در سایت است و یا اعتبار session از بین نرفته ، بر روی سرور ذخیره شده و در مرورگر به صورت کوکی تعریف شده اند .

session ها موقتی هستند و پس از اینکه کاربر سایت را ترک کرد و یا مثلا برای مدتی ، صفحه جدیدی باز نکرد ، از بین می روند . بنابراین در مراجعه بعدی ، در صورت فعال نبودن کوکی برای آن سایت ، باید اطلاعات را مجددا وارد نمایید .

معمولا عمر session را کوتاه تعریف می کنند تا امنیت اطلاعات کاربر بالا برود . تا حالا حتما به چنین موردی برخورد کرده اید . هنگامی که وارد یک سایت شده و اطلاعات خود را وارد نموده اید ، زمانی که صفحه سایت را در مرورگر به صورت باز رها کرده و پس از مدتی دوباره به سایت برگشته اید ، متوجه شده اید که اطلاعات شما از سرور پاک شده و باید مجددا وارد شوند . در این حالت می گوییم session ، منقضی یا expire شده است . اکنون پس از تعریف مفهوم seesion ، قصد داریم تا شما را با نحوه تعریف و استفاده از session در PHP ، آشنا نماییم .

نحوه تعریف session در PHP :

برای ایجاد session در یک صفحه PHP ، ابتدا باید تابع ( ) session_startup را قبل از تگ < head > در صفحه ، تعریف نمایید . به صورتی که در جدول زیر نمایش داده ایم :

این کد session کاربر را در سرور ثبت کرده ، به شما اجازه می دهد که عملیات session را شروع نموده و یک UID برای شما ایجاد می کند .

Syntax < ? php   session_start( )   ; ? >
< html >
< head >
< /head >
< body >
< /body >
< /html >

پس از آماده نمودن مقدمات ، نحوه دستوری مقداردهی و سپس خواندن یک session در PHP را در جدول زیر در قالب یک مثال نمایش داده ایم . این روش روش استاندارد مقدار دهی و خواندن یک session در PHP است . در مثال زیر یک session به نام views ، ابتدا مقدار دهی شده و سپس در درون صفحه بازخوانی شده است :

مثال < ? php  
session_start( )   ;
// را مقدار دهی می کند session کد زیر یک
$_SESSION [ ‘views’ ] = 1 ;
 ? >
< html >
< head >
< /head >
< body >
    < ?php
// را می خواند session کد زیر مقدار
echo ” Pageviews = ” . $_SESSION [ ‘views’ ] ;
? >

< /body >
< /html >
خروجی مثال Pageviews = 1

مثال : در مثال دوم کدی طراحی شده است که به وسیله متغیر session به نام views ، تعداد دفعات مشاهده یک صفحه را نمایش می دهد . این دستود ابتدا مقدار این session را بررسی کرده و در صورتی که مقدار دهی نشده باشد ( یعنی کاربر اولین بار وارد صفحه شده است ) ، مقدار آن را برابر با 1 قرار می دهد . اما اگر از قبل مقدار دهی شده باشد ، یعنی کاربر قبلا به صفحه سر زده است . بنابراین یک واحد به مقدار آن اضافه می کند :

Example
< ? php
session_start( )   ;
  if ( isset ( $_SESSION [ ‘views ‘] ) )
$_SESSION [ ‘views’ ] = $_SESSION [ ‘views’ ] + 1 ;
else
$_SESSION [ ‘views’ ] = 1 ;
echo “Views = ” . $_SESSION [ ‘views’ ] ;
? >
کد
دکتر علی قوامی
دکتر علی قوامی
دانش‌آموخته دکترای تخصصی (PhD) کارآفرینی فناوری، بنیانگذار و مدیر گروه بین‌المللی کسب و کار ساکوراد با بیش از ۲۰ سال تجربه بعنوان کوچ، مدرس، مشاور و منتور در حوزه‌های مختلف راه‌اندازی و توسعه کسب‌وکار در ۱۵ کشور جهان هستم. در تلاشم تا تجربیات ذی‌قیمت خود را با شما دوستان عزیزم به اشتراک گذارم.
پیشنهاد بر اساس سلیقه شما

مسیریابی تحصیلی - شغلی (آنلاین)

تست شغلی به آزمون روانشناسی گفته می شود که فرد با توجه به پاسخگویی به سوالات در انتها بهترین شغلی که می تواند در آن موفق باشد را معرفی می کند.

سئوالات و نظرات ارزشمند خود را با ما مطرح کنید

دیدگاهتان را بنویسید

راهنمای گام به گام تا دریافت مشاوره

گام اول

انتخاب حوزه تخصصی مدنظر

گام دوم

بررسی رزومه مشاوران مرتبط

گام سوم

انتخاب مشاور با تخصص مدنظر

گام چهارم

تکمیل فرم و ثبت درخواست

گام پنجم

پرداخت حق‌الزحمه مشاور

گام ششم

تماس با شما برای تعیین وقت

گام هفتم

برقراری ارتباط شما با مشاور