اگر علاقه مند به همکاری در نت پارادیس جهت نویسندگی، ویراستاری و ترجمه مطالب هستی پس روی دکمه مقابل کلیک کن

علاقه به همکاری دارم

طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

رمزگذاری Session در php


رمزگذاری Session در php

عملیات رمزگذاری Session در php بصورت خودکار در هنگام ذخیره داده سیشن  در حافظه (memory) و خواندن اطلاعات session انجام می شود . هنگام رمزگذاری (encode) , آرایه $_SESSION به یک رشته سریال شده (serialize) تبدیل می شود و هنگام خواندن دوباره سیشن نیز عملیات تبدیل به رشته اصلی نیز انجام می گردد.

این عملیات serialization همان فرمتی که تابع serialize() در php تولید می کند , را انجام نمی دهد .

داده اینکد شده session شامل تمام المنت های آرایه $_SESSION که با , (simicolon) جدا شده اند , است . هر خانه یا المنت شامل سه بخش است : ایندکس session , طول مقدار ذخیره شده و مقدار ذخیره شده . برای مثال :

توابع رمزگذاری Session در php (اینکد و دیکد)

Php دو تابع برای encode و decode دستی سیشن ها معرفی کرده است . این توابع بصورت زیر هستند :

  • session_encode()
  • session_decode()

قبل از استفاده از این توابع , نیاز دارید که انجین سیشن را با فراخوانی تابع session_start() قبل از هر نوع کد و کاراکتری در خط اول پروژه استارت بزنید.همچنین مقاله انواع خطا در php و output buffering در php را مطالعه بفرمایید

در غیر اینصورت می توانید با قرار دادن مقدار ۱ برای session.auto_start در فایل پیکربندی php.ini این قابلیت را خودکار کنید.

تابع session_decode() در php داده سریال شده سیشن را دریافت و آن را در یک آرایه برگشت میدهد . این تابع مقدار TRUE را درصورت موفقیت آمیز بودن عملیات دیکد برگشت می دهد . در واقع تابع session_decode مقدار آرایه $_SESSION را با داده های دیکد شده فراخوانی می کند. یک مثال واقعی از رمزگذاری Session در php را ببینم .

حتما بخوانید  معرفی احراز هویت Token در php

مثال رمزگذاری Session در php

در این مثال , ما دو سیشن product_code و logged_in داریم . در زمان فراخوانی  session_encode()خروجی رشته سریال شده را در یک متغییر برگشت می دهد .

زمانی که تابع session_decode را برای دیکد کردن داده های سیشن فراخوانی میکنیم , در واقع مقدار آرایه $_SESSION را با داده های ذخیره شده مجددا بارگذاری می کنیم (reload)

در این مثال , ما مقدار product_code و logged_in رو تغییر دادیم اما , مقادیر جدید با داده های سیشن قبلی , هنگام فراخوانی تابع session_decode , جایگزین شدند.

خروجی مثال رمزگذاری Session در php

حتما سعی کنید امنیت سیشن در php را جدی بگیرید و در پروژه های تحت وب خود از توابع و تکنیک های لازم برای افزایش امنیت session در php بهره ببرید.

حتما بخوانید  آپلود فایل با قابلیت resume

امیدوارم مقاله رمزگذاری Session در php برای شما عزیزان مفید واقع شده باشد .

برای دریافت سورس کد استفاده شده در اینجا از باکس دانلود استفاده کنید.

هر گونه مشکلی در پیاده سازی کدها داشتید ، از قسمت نظرات اقدام کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

اگر مفید بود, لطفا به اشترک بگذارید تا دوستان دیگر نیز بهره ببرند

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان های تحت وب, امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جدیدترین آموزش های آنلاین



دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

سورس فروشگاهی دیجی کالا

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

مجوزهای ما

logo-samandehi

دانلود کتاب

عضویت رایگان خبرنامه